Commit Graph

81 Commits

Author SHA1 Message Date
femtocleaner[bot] be7b401762 Fix deprecations 2018-09-26 18:03:07 +00:00
kalmarek 1aa64647c8 replace strings with Symbols 2019-01-03 03:37:37 +01:00
kalmarek 3cc6262356 simplify type of AutSymbols 2019-01-03 03:37:02 +01:00
kalmarek e28c296bce PermGroup is iterable in AbstractAlgebra master 2018-09-21 18:10:34 +02:00
kalmarek 0286ca7c4d replace converts by constructors 2018-09-21 18:09:13 +02:00
kalmarek 77efcdff3e trivial changes for julia-0.7 2018-09-21 18:08:44 +02:00
kalmarek 60c04f0dbd fix type instability in domain 2018-08-07 23:51:15 +02:00
kalmarek 84d601817c avoid creation of parent in perm_autsymbol and skip perm check 2018-08-01 23:21:47 +02:00
kalmarek 7f25d96038 Automorphism: initialize hash to 0x0 2018-07-30 15:19:18 +02:00
kalmarek e9ae22cfe9 convenience (S)Aut(G) and (G::WreathProduct)(n,p) constructors 2018-07-30 15:01:20 +02:00
kalmarek 0a20c5bb73 change hashing constant for reproducible hash of Automorphisms 2018-07-30 15:00:02 +02:00
kalmarek 5ac1ea7ba8 rename Automorphism.typ -> Automorphism.fn 2018-07-30 14:54:09 +02:00
kalmarek fe0e22f0bf align to perms acting on the right 2018-07-30 13:54:15 +02:00
kalmarek 158ce5ee27 replace Nemo -> AbstractAlgebra 2018-07-30 08:30:27 +02:00
kalmarek 1597784ac5 add the standard linear representation for Automorphisms 2018-04-10 13:14:45 +02:00
kalmarek f2fb7f53cd move ==(::GSymbol, ::GSymbol) to Groups.jl 2018-04-09 13:00:50 +02:00
kalmarek b8abe64656 Parametrise Automorphisms on Integer type 2018-04-09 12:59:47 +02:00
kalmarek 3ac9231032 replace free_reduce! -> freereduce! 2018-04-02 18:19:55 +02:00
kalmarek 3ff1f1897e fix simplify_perms! → simplifyperms!
Currently it passes twice over W.symbols, but should be correct
2018-04-02 18:18:12 +02:00
kalmarek f9ede91343 replace delete_ids! -> deleteids! 2018-04-02 18:15:12 +02:00
kalmarek d83af99fbc rework reduce! and sumplify_perms! using delete_ids! 2018-03-29 19:23:24 +02:00
kalmarek f493ed7283 rewrite simplify_perms! 2018-03-28 12:20:03 +02:00
kalmarek 6b0499005f rename field of PermAut p->perm 2018-03-28 12:19:18 +02:00
kalmarek 7139322d05 New version of hash and ==
evaluation of Automorphism on the standard basis is expensive

in hash(g::Automorphism, h::UInt) we
1. compute and store savedhash (evaluating f, if necessary) with a fixed value HASHINGCONST
2. xor h with savedhash

in == we evaluate f only at hash-colision (or when
This way we evaluate f multiple times only in ~2% of cases (for SAut(F_4))
2018-03-27 20:14:24 +02:00
kalmarek 6a7bb03d73 no need to store initial value of savedhash
it must be accessed after checking the modified filed
2018-03-27 18:24:40 +02:00
kalmarek ffd5bbdc19 remove savedimage: Automorphism becomes prohibitively large 2018-03-27 18:23:43 +02:00
kalmarek 9e053df1a8 Add needed convert to Automorhphism{N} 2018-03-26 07:29:41 +02:00
kalmarek a7bf32145c replace AutGroupElem with Automorphism{N} <: GWord{AutSymbol}
this allows to store in the Automorphism struct
 precomputed hash and
 image of the canonical basis
2018-03-26 07:26:48 +02:00
kalmarek 02d947899f immutable -> struct 2018-03-25 19:13:30 +02:00
kalmarek c89ffbb4b4 constructing NTuple is faster than deepcopying it? 2018-03-25 19:12:29 +02:00
kalmarek 0233aedc41 use perms{Int8} in AutGroup and in tests 2018-03-22 17:24:23 +01:00
kalmarek d834935d05 be more specific on the type of objectGroup in AutGroup 2018-03-22 10:49:31 +01:00
kalmarek c8f0ee04da automorphisms apply in-place 2018-03-21 19:23:13 +01:00
kalmarek dd4d23189b domain(G::AutGroup) returns deepcopy of G.domain 2018-03-21 19:22:09 +01:00
kalmarek 181073b517 use domain in hash and == 2018-03-17 05:09:09 +01:00
kalmarek acb1dbe6c8 use tuples in evaluation of AutSymbols 2018-03-17 05:08:42 +01:00
kalmarek 6a59c53c8f add domain field to AutGroup 2018-03-17 05:01:21 +01:00
kalmarek 03b7590faa fix merging master 2017-11-15 20:43:09 +01:00
kalmarek c18e2156b5 Merge branch 'master' into enh/julia-v0.6 2017-11-15 20:34:30 +01:00
kalmarek 04d1591c7d actually cache and use savedhash + tests 2017-10-27 16:16:43 +02:00
kalmarek 5945462d45 no need for ispermauto function
handled easily by isa(..., PermAut)
2017-10-27 16:15:33 +02:00
kalmarek 5c14edc53c update change_pow to the new AutSymbol 2017-10-27 16:14:28 +02:00
kalmarek 329e481d24 move getperm 2017-10-27 16:13:45 +02:00
kalmarek 0144c49372 AutSymbol evaluation -- much simpler
due to automorphism type carried as an attribute
2017-10-27 16:12:28 +02:00
kalmarek 3d2bc63723 creating AutSymbols 2017-10-27 16:11:18 +02:00
kalmarek 5f224f6713 Evaluation of {R,L}Transvec, PermAut, FlipAut types 2017-10-27 16:10:04 +02:00
kalmarek e6a0ffd3d6 AutSymbol carries automorphism type, not expression 2017-10-27 16:09:23 +02:00
kalmarek c593522ab9 fix the AutGroup gens 2017-10-24 15:27:43 +02:00
kalmarek 23d3787e34 evaluate AutSymbol 2017-10-24 15:26:27 +02:00
kalmarek 54e8eb0b43 remove .func field from autsymbol 2017-10-24 15:25:37 +02:00