Commit Graph

483 Commits

Author SHA1 Message Date
Marek Kaluba f00de84d29
bump to 0.7 and update compats 2021-09-28 15:47:09 +02:00
Marek Kaluba baec864437
uncomplicate Transvections 2021-08-13 16:54:45 +02:00
Marek Kaluba 960a70afef
Merge branch 'master' into enh/mcg 2021-08-13 16:22:38 +02:00
Marek Kaluba 5ed9357ba5
export gens 2021-08-13 16:22:37 +02:00
Marek Kaluba 0fbdbbde14
fix inverses and symplectic twists to finally arrive at SAut(π₁Σ) 2021-08-13 16:22:37 +02:00
Marek Kaluba 1d4e219687
remove PermLeftAut 2021-08-13 16:22:36 +02:00
Marek Kaluba 67e7a3105e
add rotation_element and correct Te, Ta, Tα 2021-08-13 16:22:35 +02:00
Marek Kaluba 4014b4f7b8
remove Alphabet arg from evaluate 2021-08-13 16:22:35 +02:00
Marek Kaluba 156e4a2af3
renumerate Dehn Twists 2021-07-21 16:26:22 +02:00
Marek Kaluba 6b354d449b
remove new_types.jl again 2021-07-20 10:39:21 +02:00
Marek Kaluba ed1e3f9709
store invperm in SMC to avoid allocation in evaluate 2021-07-18 18:36:07 +02:00
Marek Kaluba bcce338754
refactor wlmetric_ball 2021-07-17 20:23:41 +02:00
Marek Kaluba 27e768639d
first try at compiled automorphisms 2021-07-17 20:11:32 +02:00
Marek Kaluba a258c563d1
make smc acting on the right 2021-07-12 11:11:39 +02:00
Marek Kaluba a742bf32ec
add code for forward evaluation 2021-07-09 16:46:15 +02:00
Marek Kaluba eef13c9afa
Since SMC act from the left(!) distinguish Aut(Left|Right)Perm 2021-07-07 10:36:40 +02:00
Marek Kaluba 99fd238cf2
permute π₁Σ generators to maintain coherent order with Aut(F_n) 2021-07-07 10:34:42 +02:00
Marek Kaluba 3629b07626
add gens_idcs to SymplecticMappingClass 2021-07-07 10:33:34 +02:00
Marek Kaluba 79a4450ef9
create mcg_twists from Aut(F_n) directly 2021-07-07 10:32:13 +02:00
Marek Kaluba 15a737bfa5
add PermAut(omorphisms) 2021-07-05 15:05:57 +02:00
Marek Kaluba 939d231bbe
pretty printing for automorphisms 2021-07-05 15:05:37 +02:00
Marek Kaluba b191457526
fix: AbstractFPGroupElement change order of args in FPGroupElement 2021-07-05 15:05:03 +02:00
Marek Kaluba 2f5401be83
add maxrules to SpecialAutomorphismGroup 2021-06-29 16:54:00 +02:00
Marek Kaluba 29b6675a8a
introduce AbstractFPGroupElement 2021-06-29 16:52:35 +02:00
Marek Kaluba 394d9a7aac
Merge branch 'master' into enh/GroupsCore 2021-06-28 09:40:25 +02:00
Marek Kaluba fe347423d4
fix imports/exports and Project.toml 2021-06-21 19:14:42 +02:00
Marek Kaluba 9436301271
rename files in src 2021-06-21 18:53:22 +02:00
Marek Kaluba 8cd1f09d74
add exports, remove New module from tests 2021-06-21 18:45:10 +02:00
Marek Kaluba 26781bad5c
remove the old implementation 2021-06-21 18:16:04 +02:00
Marek Kaluba 7d5c7ac623
remove fishy part in normalform! that was never hit 2021-06-21 17:56:29 +02:00
Marek Kaluba 39f4ef4b5f
test show methods 2021-06-21 17:56:28 +02:00
Marek Kaluba 8cb64d947d
create FreeGroup(::Alphabet) on the correct number of gens 2021-06-21 17:52:51 +02:00
Marek Kaluba 2992244a24
make evaluate[!] a general thing for AutomorphismGroups 2021-06-21 16:37:15 +02:00
Marek Kaluba 33086db01d
add tests for Aut(Σ₄.₁) 2021-06-10 12:55:21 +02:00
Marek Kaluba d238854095
first working version of Automorphisms of surface groups 2021-06-08 16:20:11 +02:00
Marek Kaluba 979ffaccfa
some eye-candy 2021-06-08 16:20:10 +02:00
Marek Kaluba 66a33e7c72
make evaluate[!] a general thing for AutomorphismGroups 2021-06-08 16:20:10 +02:00
Marek Kaluba e7740b9716 WIP: mcgs 2021-05-28 18:54:21 +02:00
Marek Kaluba f74b48b890 separate SAut(F_n) from AutomorphismGroups 2021-05-28 14:20:17 +02:00
Marek Kaluba 3a88728e0a
add New.FreeGroup(n::Integer) method 2021-05-26 12:12:26 +02:00
Marek Kaluba 1c7f0a5f01
better show 2021-05-26 12:07:15 +02:00
Marek Kaluba e424bdc575
optimize evaluation with tmp storage 2021-05-26 12:06:40 +02:00
Marek Kaluba 812b2e15a1
fix bug with isone on Automorphism 2021-05-26 12:03:28 +02:00
Marek Kaluba 2e560738f6
clean-up iteration 2021-05-25 22:27:22 +02:00
Marek Kaluba ac3d7f0977
implement and test GroupsCore interface for FreeGroup and FPGroup 2021-05-24 15:35:28 +02:00
Marek Kaluba 60f3b686ba
use KnuthBendix.print_repr 2021-05-24 01:41:37 +02:00
Marek Kaluba 0fb84a9c61
add a few @inbounds 2021-05-24 01:40:54 +02:00
Marek Kaluba 1c971cb3b1
slightly more efficient equality_data 2021-05-24 01:07:59 +02:00
Marek Kaluba 6fba013f0b
set default word_type to Word{UInt8} 2021-05-16 23:23:16 +02:00
Marek Kaluba 75b7d9fab3
formatting 2021-05-16 23:22:33 +02:00
Marek Kaluba 84bfbd7408
remove threading in == for Automorphisms 2021-05-16 23:16:35 +02:00
Marek Kaluba 5da33782aa
add new_transvections for Aut(F_n) 2021-05-16 22:47:20 +02:00
Marek Kaluba f4858fba14
move normalform! to equality_data
heuristic: compute normalform! only if length of automorphism is greater 
than 8
2021-05-16 22:30:50 +02:00
Marek Kaluba 6405a1868e
rename _hashing_data to equality_data 2021-05-16 22:27:54 +02:00
Marek Kaluba 472e78af27
generalize signatures of wlmetric_ball 2021-05-09 19:37:26 +02:00
Marek Kaluba 217be597c3
first working version of new AutomoprhismGroups 2021-05-09 18:54:29 +02:00
Marek Kaluba 31a0620da3
add literal_pow(^, s::GSymbol, ::Val{-1}) = inv(s) 2021-05-07 18:16:58 +02:00
Marek Kaluba 6e14d30903
move rewrite_from_left!(v, w, ::Alphabet) to KnuthBendix.jl 2021-05-07 18:15:02 +02:00
Marek Kaluba 4c8eccf72b
new iteration based on OrderedSet 2021-05-07 18:14:13 +02:00
Marek Kaluba cdd36f680a
new hashing && bitflags 2021-05-07 18:11:11 +02:00
Marek Kaluba 44df0016bc
add general FPGroups 2021-05-05 02:35:12 +02:00
Marek Kaluba be1602d11f
fix gens 2021-05-05 02:33:36 +02:00
Marek Kaluba 288f06c070
add rewriting function to AbstractFPGroups 2021-05-05 02:32:27 +02:00
Marek Kaluba 9d7596acf1
first try on the new FPGroups 2021-05-05 01:10:28 +02:00
Marek Kaluba 711988b98a
sort out imports + first adjustments to Group Interface 2021-04-11 18:44:03 +02:00
Marek Kaluba 990c8dd1c3
remove DirectPower, WreathProduct
these are included in GroupsCore
2021-04-11 01:27:01 +02:00
kalmarek ad295fd436
fix iteration over Automorphisms 2020-11-10 17:03:10 +01:00
kalmarek 59272b3b42
fix error in wlmetric_ball_serial 2020-10-09 17:37:57 +02:00
kalmarek 2d66b4f56e
format and bump to 0.5.0 2020-10-09 14:01:59 +02:00
kalmarek 837312d020
more threading using ThreadsX;
rename generate_balls → wlmetric_ball
2020-10-09 13:50:11 +02:00
kalmarek 8923912367
get rid of Markdown docstrings 2020-10-07 03:10:10 +02:00
kalmarek 1c659d5216
asynchronously compute images in == for Automorphisms 2020-10-07 02:40:18 +02:00
kalmarek 38fbed7f76
improvements in freereduce 2020-10-07 02:39:00 +02:00
kalmarek a4e0b821b9
use rmul!/lmul! in the definitions of R/LTransvect 2020-10-07 02:38:22 +02:00
kalmarek 8532767170
rework hashing using hints from FNV-1a algorithm 2020-10-07 02:37:29 +02:00
kalmarek 873361af73
allow numbers > 9 in subscriptify 2020-10-07 02:33:58 +02:00
kalmarek 512394e69b
fix: dealias inv(id) from id 2020-04-20 03:25:25 +02:00
kalmarek cdbd483e9e
more tests for AutGroup 2020-04-20 02:41:24 +02:00
kalmarek a6aabf4541
even more tests 2020-04-20 02:02:57 +02:00
kalmarek 38f121d8ee
Merge pull request #8 from kalmarek/enh/github_actions
add github workflow runtests
2020-04-20 01:02:47 +02:00
kalmarek 7517a8feb9
tests and imports for findlast, findprev 2020-04-20 00:52:06 +02:00
kalmarek dfce36c099
add tests for iteration for GWords 2020-04-20 00:36:35 +02:00
kalmarek 5b1ab66797
rework push!, pushfirst!, append!, prepend! and rmul! 2020-04-19 23:50:13 +02:00
kalmarek 7bc26ece79
fix bug in reduce!(::Automorphism) 2020-03-25 16:25:21 +01:00
kalmarek 6d22c82ab3
create a general/saner homomorphism evaluation architecture 2020-03-25 15:43:38 +01:00
kalmarek ebefc7e399
reshuffle AutGroup 2020-03-25 15:42:20 +01:00
kalmarek 0bee697ed8
update to AbstractAlgebra v0.9 2020-03-25 13:48:44 +01:00
kalmarek 622f5bc6b3
fix coercion to FPGroup 2020-03-25 13:46:32 +01:00
kalmarek ac4ee69fc6
general cleanup 2020-03-25 05:24:34 +01:00
kalmarek b125871697
unify the two definitions of generate_balls; rename to metric_ball 2020-03-25 05:23:06 +01:00
kalmarek 12be3b75bc
add missing constructors and converts 2020-03-25 05:21:57 +01:00
kalmarek f8aedc207f
make FPGroups more connected to their freepreimages 2020-03-25 05:00:16 +01:00
kalmarek 2196b7d256
find and replace, finally 2020-03-25 04:42:47 +01:00
kalmarek afa0988ebc
separate arithmetic 2020-03-25 04:41:23 +01:00
kalmarek e84152a9cf
separate hashing and freereduce 2020-03-25 04:40:14 +01:00
kalmarek 43ad81d4dd
separate GWords 2020-03-25 04:19:02 +01:00
kalmarek 263444c2a9
add basic fallbacks 2020-03-25 04:16:21 +01:00
kalmarek b92276ade2
separate GSymbols 2020-03-25 04:05:28 +01:00
kalmarek 5f0a33d335
overhaul findnext, findprev and replace 2020-03-25 03:54:12 +01:00
kalmarek 9bb2aba6f6
add issubword, issubsymbol 2020-03-25 03:38:33 +01:00