|
b04a472063
|
combine * and inv under "Group Operations" label
|
2017-07-23 03:24:40 +02:00 |
|
|
251fdd4afa
|
fix setindex!
|
2017-07-23 03:24:05 +02:00 |
|
|
aad2907c51
|
fix: WreathProductElem is typed only after GroupElem
|
2017-07-21 17:14:55 +02:00 |
|
|
b7151d1fc2
|
docs
|
2017-07-21 16:05:49 +02:00 |
|
|
6fa01d87ef
|
faster versions of * and inv for products of rings
|
2017-07-21 16:04:45 +02:00 |
|
|
6f08259466
|
Don't multiply if not necessary -> directly create element
|
2017-07-21 16:04:11 +02:00 |
|
|
d668574805
|
parent is constructable, don't use it in hash
|
2017-07-21 16:03:26 +02:00 |
|
|
c60e5a8c5c
|
reworked inv + doc
|
2017-07-21 16:02:44 +02:00 |
|
|
70a8a9b72d
|
get rid of the old parent stuff
|
2017-07-21 16:02:07 +02:00 |
|
|
0519d06baa
|
add check argument to WreathProductElem constructor
|
2017-07-21 16:01:22 +02:00 |
|
|
36a0e8593d
|
new multiplication
|
2017-07-21 15:59:47 +02:00 |
|
|
620b970f62
|
merge Binary operators and Inversion as Group operations
|
2017-07-21 14:33:53 +02:00 |
|
|
354da78769
|
clean-up show
|
2017-07-21 14:31:05 +02:00 |
|
|
68df946c81
|
don't construct parent(::WreatProductElem) when not necessary
|
2017-07-21 14:30:48 +02:00 |
|
|
7c1a96b64e
|
don't compare parents when parents are constructable
|
2017-07-21 14:29:38 +02:00 |
|
|
89b89f13a5
|
there is no parent field
|
2017-07-21 14:23:47 +02:00 |
|
|
b89e60e508
|
standard outer constructors for WreathProduct{Elem}
|
2017-07-21 13:40:54 +02:00 |
|
|
06a4e50a2d
|
don't compute G.N(p.n) and G.P(g.p) twice when coercing
|
2017-07-21 13:37:28 +02:00 |
|
|
4fa7d744c2
|
parent(WreathProductElem) is now computed on the fly ==> slow
|
2017-07-21 13:36:39 +02:00 |
|
|
a6f0685313
|
concrete updates to elem_type, parent_type
|
2017-07-21 13:36:04 +02:00 |
|
|
fa996d68fb
|
make WreathProduct{Elem} concrete & immutable
parametrize by WreathProduct{Elem} by T<:Group{Elem}
|
2017-07-21 13:34:57 +02:00 |
|
|
125e4a5263
|
remove eye
|
2017-07-21 13:32:34 +02:00 |
|
|
16f3b6b44e
|
update elements, order
|
2017-07-21 13:32:14 +02:00 |
|
|
83f9ed61b8
|
multiple dispatch style solutions for * and inv for rings
|
2017-07-21 13:30:35 +02:00 |
|
|
ca23485b5e
|
trivial updates to show, ==
|
2017-07-21 13:29:12 +02:00 |
|
|
610defe354
|
update hash according to changes in type
|
2017-07-21 13:27:54 +02:00 |
|
|
7989967cc4
|
vararg version of overload -- with mandatory checking
|
2017-07-21 13:27:27 +02:00 |
|
|
10022fd31c
|
DirectProductGroup overloads: with vector and GroupElem
|
2017-07-21 13:27:00 +02:00 |
|
|
ba4400efbb
|
optionally coerce to G when called G(a::Vector)
|
2017-07-21 13:25:34 +02:00 |
|
|
ae97c20e62
|
update \times outer constructor
|
2017-07-21 13:24:14 +02:00 |
|
|
6820274f65
|
handled by inner constructor
|
2017-07-21 13:22:47 +02:00 |
|
|
7f67a68176
|
compute parent of element as needed ==> avoid calling parent(g)
|
2017-07-21 13:21:38 +02:00 |
|
|
7f1b6f61d0
|
fine tuned elem_type, parent_type
|
2017-07-21 13:20:31 +02:00 |
|
|
d02c5afc65
|
store only single factor and multiplicity in DirectProductGroup
|
2017-07-21 13:19:56 +02:00 |
|
|
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 |
|