1
0
mirror of https://github.com/kalmarek/Groups.jl.git synced 2024-12-27 02:35:29 +01:00
Commit Graph

421 Commits

Author SHA1 Message Date
a78e4ccea2 spacing 2017-07-16 21:43:43 +02:00
d2cb646119 use additive group for objects involving Rings 2017-07-12 21:12:23 +02:00
a5a67bd7d3 operations field is no more 2017-07-12 21:11:12 +02:00
674fa9f9d3 never access parent filed directly 2017-07-12 21:10:31 +02:00
a3eeee0728 AbstractVector interface for DirectProductGroupElem 2017-07-12 21:10:01 +02:00
799878ded5 Brave new constructors 2017-07-12 21:09:26 +02:00
6b84254416 typed elem_type 2017-07-12 21:06:07 +02:00
78eded0124 construct parent object on the fly 2017-07-12 21:05:55 +02:00
8631e5d16b type DirectProductGroup/Elems after type of single factor
This limits the scope of DirectProductGroup/Elems to pure direct products
2017-07-12 21:05:21 +02:00
2b59b5c89f Merge branch 'enh/FPGroups' 2017-07-06 17:30:56 +02:00
df19042de6 initial @compat changes, works on v0.6 without warnings 2017-07-06 17:27:56 +02:00
32f07e1315 git fix typealias 2017-07-06 10:04:39 +02:00
b61c06cd96 Merge branch 'enh/FPGroups' 2017-07-06 09:55:40 +02:00
ff7bbe8e21 allow for different group operation in generate_balls/products 2017-07-06 09:45:14 +02:00
02c1022846 use @compat for types, etc 2017-07-06 09:22:56 +02:00
4bb3c9df4f don't export generators, it's been replaced by gens 2017-07-06 09:20:43 +02:00
e0af8ded6e adjust to changes in replace_all 2017-07-06 09:19:53 +02:00
18ad0a04b6 replace_all! returns if any modification has been performed 2017-07-06 09:18:53 +02:00
95ac3940d7 FreeGroup and AutGroup are AbstractFPGroups 2017-07-06 09:17:17 +02:00
8e9b9d5603 include the FPGroups.jl file 2017-07-06 09:12:35 +02:00
345e066664 change in doc 2017-07-06 09:11:56 +02:00
04b07eb260 define gens(::AbstractFPGroup) 2017-07-06 09:11:27 +02:00
ffa9cc4cd2 add_rel! and quotientgroup are implemented in FPGroups.jl 2017-07-06 09:10:32 +02:00
f395af242b add FPGroups.jl file 2017-07-06 09:09:49 +02:00
ab31d8fca1 add AbstractFPGroup <: Group abstract type 2017-07-06 09:09:24 +02:00
4b68fe745f docstring for gens function 2017-07-06 09:05:24 +02:00
392214b697 fix: don't shadow gens function 2017-07-06 09:04:48 +02:00
5d51855d17 add unified gens(G::FPGroup) function 2017-07-05 16:26:14 +02:00
08ebec118f formatting 2017-07-05 16:22:50 +02:00
cc1d662814 fix non-parametrised dispatch of replace_all 2017-07-05 16:18:37 +02:00
6c8591b1d4 fix the replace! function in case length(toreplace)= 1 2017-07-05 16:18:04 +02:00
5a9d4b4bb6 add missing cases for find first (length =0, 1) 2017-07-05 16:16:47 +02:00
613ec172bd add xor for 0.5 compatibility 2017-07-05 13:56:01 +02:00
1bfbd574ee use xor(,) instead of $ 2017-07-04 17:16:06 +02:00
9626d16da9 merge modules DirectProducts, WreathProducts into Groups 2017-06-22 15:04:51 +02:00
00f5fc1f23 add DirectProducts and WreathProducts 2017-06-22 14:21:25 +02:00
17888437ff specialise generate_balls, products 2017-06-05 17:32:20 +02:00
1d3017389f add quotes in docstring 2017-05-19 10:35:29 +02:00
64d5466aa7 rename variables to less confusing names 2017-05-18 12:21:31 +02:00
3776e947a3 extend parent_type, elem_type from Nemo (i.e. import) 2017-05-17 17:47:13 +02:00
c03882ae69 add Misc category with: products, generate_balls 2017-05-17 17:46:30 +02:00
f505b00502 deepcopy_internal is handled in Groups.jl 2017-05-15 17:29:47 +02:00
7db7119a29 show for AutGroup 2017-05-15 17:29:12 +02:00
9395c8e2f0 more accurate show for FreeGroup 2017-05-15 17:28:58 +02:00
d3a9f8d3f6 perm_autsymbol(::Vector{Int}) convenience function 2017-05-15 17:23:49 +02:00
9606a14743 finish reduce if both simplify_perms! and free_reduce! return true 2017-05-15 17:23:23 +02:00
18ae84d9cd streamline and adapt simplify_perms! 2017-05-15 17:21:48 +02:00
c20259e1b7 specific hash and == for AutGrouElem (as functions) 2017-05-15 17:20:44 +02:00
3de09cbab5 remove specific deepcopy_internal -- handled by general in Groups.jl 2017-05-15 17:19:59 +02:00
6121c38d7f separate AutGroup from AutSymbol (functional) overload 2017-05-15 17:09:18 +02:00
b50d7f7a9c fix display of perm_autsymbols 2017-05-15 17:07:45 +02:00
b65a202bc1 don't export AutSymbol 2017-05-15 17:06:57 +02:00
2d3ed657e7 deepcopy_internal for FreeGroupElems 2017-05-15 09:54:28 +02:00
bdca979fda add length(::AutSymbol) 2017-05-15 09:54:08 +02:00
c925181116 fieldname is gens not generators 2017-05-15 09:53:53 +02:00
a04fea9a09 make perm_autsymbol use PermutationGroup 2017-05-15 09:53:22 +02:00
26f49ce963 deepcopy_internal of AutGroupElem 2017-05-15 09:52:46 +02:00
82d05315ab coercion of AutSymbol to AutGroupElem 2017-05-15 09:52:10 +02:00
fbee33153f more specific AutGroupElem overload 2017-05-15 09:51:35 +02:00
e8ffc55b72 fix the AutGroup constructor 2017-05-15 09:51:03 +02:00
51b7b7a748 another gen -> str 2017-05-15 09:50:26 +02:00
9847f8addf remove using Permutations, import Base.convert 2017-05-15 09:49:34 +02:00
c5ec6bb15e rename fieldname gen -> str 2017-05-15 09:48:41 +02:00
90437139cb iterate over perm.d not over perm itself 2017-05-13 22:09:03 +02:00
51694c4fbf add FreeGroup(n::Int) convenience 2017-05-12 21:19:08 +02:00
1284ded447 one(AutSymbol) is replaced by id_autsymbol 2017-05-12 21:18:38 +02:00
b955eed67b But so far we only implemented Aut(FreeGroup) 2017-05-12 20:32:33 +02:00
117eddafd6 AutGroup is a FPGroup 2017-05-12 20:31:00 +02:00
a886929948 FP{Symbol, Group, GroupElem} -> Free{Symbol, Group, GroupElem} 2017-05-12 20:30:42 +02:00
361abed62f add abstract FPGroup <: Group 2017-05-12 20:29:04 +02:00
1bd2d7fe25 update includes 2017-05-12 20:15:03 +02:00
86ec33b8a0 mv FPGroup.jl -> FreeGroup.jl 2017-05-12 20:14:26 +02:00
195c7c4392 move automorphism_groups.jl -> AutGroup.jl 2017-05-12 20:14:06 +02:00
1fc4405b77 Add headers 2017-05-12 20:11:10 +02:00
ffe0e901b2 Export AutSymbo, AugGroupElem, AutGroup; AutSymbols are internals 2017-05-12 20:10:34 +02:00
53bc7fe05c add elem_type, parent_type, generators 2017-05-12 20:09:03 +02:00
39d64b7e69 update getperm 2017-05-12 20:08:27 +02:00
f6f2258629 ASCII compatible subscriptify function 2017-05-12 20:06:42 +02:00
51baeb1326 new functions defining AutSymbols actions 2017-05-12 20:05:32 +02:00
b130417a38 move (==), hash, change_pow, inv 2017-05-12 20:04:03 +02:00
26eb8b35cb AutWord -> AutGroupElem 2017-05-12 20:02:41 +02:00
7528ab631e remove IdSymbol 2017-05-12 19:56:26 +02:00
6993c284cd AutGroup constructor 2017-05-12 19:55:50 +02:00
5aa68207df remove convert: its done in Groups.jl 2017-05-12 19:55:26 +02:00
2c35d8427e new definition of AutSymbol, AutGroupElem and its parent AutGroup 2017-05-12 19:55:07 +02:00
bab1a64042 move AutSymbol call overload 2017-05-12 19:52:27 +02:00
84830f0d3a remove rels from FPGroup making it effecively FreeGroup 2017-05-12 19:49:54 +02:00
83e40972a7 define show for <:GSymbol 2017-05-12 19:48:33 +02:00
3d944d2de2 define isone for <:GSymbol 2017-05-12 19:46:59 +02:00
9dafd3c09c remove unnecessary ::Bools 2017-05-12 19:46:08 +02:00
0891f28c6f include FPGroups.jl in Groups 2017-05-11 18:30:03 +02:00
2a3baab61a indentation 2017-05-11 18:28:29 +02:00
f256f60ca3 headers 2017-05-11 18:28:00 +02:00
9570b8c84a remove unused 2017-05-11 18:27:05 +02:00
0c699894fa FreeGroup utility function 2017-05-11 18:26:37 +02:00
8dd4d96b6f actually (<) and (<=) for FPSymbols were never used 2017-05-11 18:25:23 +02:00
5f90c0c7b1 add_rel! and quotientgroup for the future 2017-05-11 18:24:05 +02:00
1c638e296c FPSymbol inversion 2017-05-11 18:23:01 +02:00
e2585b5733 (==), (<) and (<=) for FPSymbols 2017-05-11 18:22:37 +02:00
6d8f244ee8 show for FPSymbol 2017-05-11 18:22:04 +02:00
48a80760fd add_gen! was never used 2017-05-11 18:21:40 +02:00
1e8c9468de G.gens return parentless symbols; use generators(G); 2017-05-11 18:21:05 +02:00
6c312cfef3 hash, isone, change_pow, length for FPSymbol 2017-05-11 18:19:59 +02:00
31cb855c9c FPGroup type overloads 2017-05-11 18:18:06 +02:00
f3c36f132b parent_type, elem_type 2017-05-11 18:17:42 +02:00
71c2367cae exports 2017-05-11 18:17:08 +02:00
2d72393292 constructors 2017-05-11 18:16:51 +02:00
6a29797557 the new definition of FPGroup <: Group 2017-05-11 18:16:21 +02:00
de6f6bc52d introduce FPSymbol as concrete type of GSymbol, parentless 2017-05-11 18:14:59 +02:00
cbfc3979bb remove free_groups.jl 2017-05-11 18:13:11 +02:00
a54ebbcede docs and headers 2017-05-11 18:10:46 +02:00
34f93e0a6e cosmetics 2017-05-11 18:09:55 +02:00
038ece45c5 no arithmetic of GSymbols; 2017-05-11 18:09:39 +02:00
b5139306f7 GSymbol has str fieldname, not gen 2017-05-11 18:09:09 +02:00
3d9b27756f move the exports 2017-05-11 18:08:18 +02:00
3077ec0e8b cosmetic changes to (*) and (^=power_by_squaring) 2017-05-11 18:07:57 +02:00
d3adfdb8b6 GWord is never equal to GSymbol as == requires parent 2017-05-11 18:05:03 +02:00
9b48932ab4 add doc to reduce function 2017-05-11 18:03:46 +02:00
f9ccff01a8 deepcopy_internal override to protect ParentObject from duplication 2017-05-11 18:03:06 +02:00
a3db7ab92c add parent; move GWord constructor and GSymbol -> GWord conversion 2017-05-11 18:01:55 +02:00
4718c40bd1 move hash 2017-05-11 18:00:46 +02:00
cf4529dce6 add doc and parent namefield to GWord 2017-05-11 17:59:37 +02:00
a7c91bf858 no arithmetic on GSymbols is allowed 2017-05-11 17:58:19 +02:00
c03f7bb895 one is no more 2017-05-11 17:57:18 +02:00
6ae234cabb move deletion of identities into free_reduce 2017-05-11 17:52:14 +02:00
12cf72b476 rename join_free_symbol to free_reduce 2017-05-11 17:51:16 +02:00
7b564d5e89 but it makes more sense to define word for abstract GWords 2017-05-11 17:49:56 +02:00
711d7dec12 define length and change_pow only for concrete subtypes of GSymbol 2017-05-11 17:47:15 +02:00
1c7113932d no multiplication of GSymbols -- no Words without parents allowed 2017-05-11 17:45:00 +02:00
528228e46e move inv and add parent inheritance 2017-05-11 17:43:33 +02:00
ae1dac76fc IdSymbol, one, etc. are now replaced by overloading parent object 2017-05-11 17:40:49 +02:00
ba3ca8a0ba show should be implemented for concrete subtypes of GSymbol 2017-05-11 17:38:07 +02:00
eb71dfe26e doc for GSymbol 2017-05-11 17:36:59 +02:00
fd04c2ba86 Word type is no more, its GroupElem 2017-05-11 17:36:33 +02:00
e08a5c71b3 FPGroups is imported in Groups.jl, no need to import 2017-05-11 17:35:15 +02:00
6795693ce8 temporary uses and imports 2017-05-11 17:34:07 +02:00
68e5e8e3ea add FPGroups.jl 2017-05-09 17:46:52 +02:00
8dfe9ec8f3 simplify change_pow 2017-04-18 13:19:04 +02:00
38da5b4e98 simplify symmetric_AutSymbol 2017-04-18 13:18:29 +02:00
9ac3fa3dfb add subscriptify 2017-04-18 13:17:48 +02:00
4bf178ea94 remove old commented stuff 2017-02-10 15:05:47 +01:00
2109f63738 fix: inv(flip_AutSymbol) gave incorrect results 2017-02-10 15:04:43 +01:00
f88d59e7e9 remapping the functionality of AutSymbols 2017-02-09 21:06:10 +01:00
91189124b3 Simplify perms before join_free_symbol for automorphisms 2017-02-02 11:47:03 +01:00
3ddc1294f9 Merge branch 'master' into enh/make_products_faster 2017-01-31 17:00:08 +01:00
5bfd4858a0 overload reduce function for AutWords 2017-01-31 16:59:10 +01:00
e98784bd98 rename freegroup_reduce → reduce 2017-01-31 16:56:49 +01:00
c3ee520521 Merge branch 'master' into cosmetics 2017-01-31 16:55:23 +01:00
00d92df413 reduce is run in *_multiply! don't need to further reduce 2017-01-31 16:54:03 +01:00
9e435188e1 slightly more performant version of power_by_squaring 2017-01-31 14:53:41 +01:00
0882b740d3 Merge branch 'master' into enh/make_products_faster 2017-01-31 11:27:22 +01:00
666d4f81df one deepcopy less 2017-01-31 11:22:40 +01:00
3ca4563439 Make AutSymbol and AutWord callable via fmap and imap 2017-01-27 12:46:55 +01:00
26e3d74800 Merge branch 'enh/word_replacement' 2017-01-26 13:29:06 +01:00
c2e1fa55f3 arrays in julia start at 1 2017-01-26 12:51:48 +01:00
986dc7748f add replace and replace_all functions 2017-01-26 12:50:54 +01:00
ebecf988ec Sort keys in subst_dict by wordlength (in reverse) 2017-01-26 12:50:02 +01:00
aa9bba617a findfirst and findnext reworked 2017-01-26 12:48:32 +01:00
45e6eb47ea delete superfluous ")" 2017-01-25 15:57:25 +01:00
de4d91a56a Never override hash(::T) -- always hash(::T, ::UInt) 2017-01-25 15:40:50 +01:00
885854896f fix conversion GSymbol → GWord 2017-01-25 12:18:01 +01:00
76ea736165 replace! and replace_all! for GWords 2017-01-25 11:32:12 +01:00
b0b129fd8b findnext and findfirst for GWords 2017-01-25 11:30:46 +01:00
c7e3c0b403 is_subsymbol function 2017-01-25 10:57:48 +01:00
7f810ca65e make simplify_perms delete all (id)s 2017-01-24 13:06:21 +01:00
57f0559eae cosmetics 2017-01-24 12:30:45 +01:00
ee3be65fb2 identify trivial elt with symmetric_AutSymbol() on trivial perm 2017-01-24 12:22:42 +01:00
3099ab1987 (^) returns GWord _always_; inv(GSymbol) returns a symbol 2017-01-24 11:02:42 +01:00
c9d801eae8 Added Automorpshim_groups (of free groups) 2017-01-23 19:46:41 +01:00
06894fd6d1 create package from existing code 2017-01-23 17:05:38 +01:00
66e82e5bda Groups.jl generated files.
license:  MIT
    authors:  kalmar
    years:    2017
    user:     

Julia Version 0.5.1-pre+0 [6a1e339*]
2017-01-23 16:45:24 +01:00