bugs now fixed.
I have updated my groupPresentation.spad and algebraictopology.spad
files to fix the bug with homotopy of cubical complexes. The simplicial
and cubical examples now give the same results as shown below.
I have also reordered the domain definitions as suggested by Waldek so
that it now only requires one $bootStrapMode pass to compile correctly.
(I am still curious why it did not work before - I thought that one
$bootStrapMode pass would set all function signatures and allow me to
define in any order?).
I have also removed some of the scaffolding used during construction,
improved the documentation and formatting. Including removing trailing
spaces (just in case Waldek might like to include with FriCAS).
Martin B
(1) -> cube2 := sphereSolid(2)$CubicalComplexFactory
(1)
(1..2,1..2)
Type: FiniteCubicalComplex(VertexSetAbstract)
(2) -> fundamentalGroup(cube2)
(2) < | >
Type: GroupPresentation
(3) -> triangle2 := sphereSolid(2)$SimplicialComplexFactory
(3)
(1,2,3)
Type: FiniteSimplicialComplex(VertexSetAbstract)
(4) -> fundamentalGroup(triangle2)
(4) < | >
Type: GroupPresentation
(5) -> cube3 := sphereSolid(3)$CubicalComplexFactory
(5)
(1..2,1..2,1..2)
Type: FiniteCubicalComplex(VertexSetAbstract)
(6) -> fundamentalGroup(cube3)
(6) < | >
Type: GroupPresentation
(7) -> triangle3 := sphereSolid(3)$SimplicialComplexFactory
(7)
(1,2,3,4)
Type: FiniteSimplicialComplex(VertexSetAbstract)
(8) -> fundamentalGroup(triangle3)
(8) < | >
Type: GroupPresentation
(9) -> cube2s := sphereSurface(2)$CubicalComplexFactory
(9)
-(1..1,1..2)
(2..2,1..2)
(1..2,1..1)
-(1..2,2..2)
Type: FiniteCubicalComplex(VertexSetAbstract)
(10) -> fundamentalGroup(cube2s)
(10) <d | >
Type: GroupPresentation
(11) -> triangle2s := sphereSurface(2)$SimplicialComplexFactory
(11)
(1,2)
-(1,3)
(2,3)
Type: FiniteSimplicialComplex(VertexSetAbstract)
(12) -> fundamentalGroup(triangle2s)
(12) <c | >
Type: GroupPresentation
(13) -> cube3s := sphereSurface(3)$CubicalComplexFactory
(13)
-(1..1,1..2,1..2)
(2..2,1..2,1..2)
(1..2,1..1,1..2)
-(1..2,2..2,1..2)
-(1..2,1..2,1..1)
(1..2,1..2,2..2)
Type: FiniteCubicalComplex(VertexSetAbstract)
(14) -> fundamentalGroup(cube3s)
(14) < | >
Type: GroupPresentation
(15) -> triangle3s := sphereSurface(3)$SimplicialComplexFactory
(15)
(1,2,3)
-(1,2,4)
(1,3,4)
-(2,3,4)
Type: FiniteSimplicialComplex(VertexSetAbstract)
(16) -> fundamentalGroup(triangle3s)
(16) < | >
Type: GroupPresentation
(17) -> ctorus := torusSurface()$CubicalComplexFactory
(17)
(1..1,1..2,1..1,1..2)
(1..1,1..2,2..2,1..2)
(1..1,1..2,1..2,1..1)
(1..1,1..2,1..2,2..2)
(2..2,1..2,1..1,1..2)
(2..2,1..2,2..2,1..2)
(2..2,1..2,1..2,1..1)
(2..2,1..2,1..2,2..2)
(1..2,1..1,1..1,1..2)
(1..2,1..1,2..2,1..2)
(1..2,1..1,1..2,1..1)
(1..2,1..1,1..2,2..2)
(1..2,2..2,1..1,1..2)
(1..2,2..2,2..2,1..2)
(1..2,2..2,1..2,1..1)
(1..2,2..2,1..2,2..2)
Type: FiniteCubicalComplex(VertexSetAbstract)
(18) -> fundamentalGroup(ctorus)
- 1 - 1
(18) <x z d1 | d1 *x*z, d1 *z*x>
Type: GroupPresentation
(19) -> storus := torusSurface()$SimplicialComplexFactory
(19)
(1,2,3)
(2,3,5)
(2,4,5)
(2,4,7)
(1,2,6)
(2,6,7)
(3,4,6)
(3,5,6)
(3,4,7)
(1,3,7)
(1,4,5)
(1,4,6)
(5,6,7)
(1,5,7)
Type: FiniteSimplicialComplex(VertexSetAbstract)
(20) -> fundamentalGroup(storus)
- 1 - 1
(20) <o t w | o*w *t, o*t*w >
Type: GroupPresentation
(21) -> cband := band()$CubicalComplexFactory
(21)
(1..1,1..2,1..2)
(2..2,1..2,1..2)
(1..2,1..1,1..2)
(1..2,2..2,1..2)
Type: FiniteCubicalComplex(VertexSetAbstract)
(22) -> fundamentalGroup(cband)
(22) <m | >
Type: GroupPresentation
(23) -> sband := band()$SimplicialComplexFactory
(23)
(1,2,3)
(1,2,6)
(1,5,6)
(2,3,4)
(3,4,5)
(4,5,6)
Type: FiniteSimplicialComplex(VertexSetAbstract)
(24) -> fundamentalGroup(sband)
(24) <m | >
Type: GroupPresentation
(25) -> cproj := projectivePlane()$CubicalComplexFactory
(25)
(1..2,1..1,1..1,1..2,1..1)
(1..2,1..1,1..1,1..1,1..2)
(1..1,1..2,1..2,1..1,1..1)
(1..1,1..2,1..1,1..2,1..1)
(1..1,1..1,1..2,1..1,1..2)
(1..2,1..2,2..2,1..1,1..1)
(1..2,2..2,1..2,1..1,1..1)
(2..2,1..2,1..2,1..1,1..1)
(1..2,1..2,1..1,1..1,2..2)
(1..2,2..2,1..1,1..1,1..2)
(2..2,1..2,1..1,1..1,1..2)
(1..2,1..1,1..2,2..2,1..1)
(1..2,1..1,2..2,1..2,1..1)
(2..2,1..1,1..2,1..2,1..1)
(1..1,1..2,1..1,1..2,2..2)
(1..1,1..2,1..1,2..2,1..2)
(1..1,2..2,1..1,1..2,1..2)
(1..1,1..1,1..2,1..2,2..2)
(1..1,1..1,1..2,2..2,1..2)
(1..1,1..1,2..2,1..2,1..2)
Type: FiniteCubicalComplex(VertexSetAbstract)
(26) -> fundamentalGroup(cproj)
(26) <i1 | i1*i1>
Type: GroupPresentation
(27) -> sproj := projectivePlane()$SimplicialComplexFactory
(27)
(1,2,3)
(1,3,4)
(1,2,6)
(1,5,6)
(1,4,5)
(2,3,5)
(2,4,5)
(2,4,6)
(3,4,6)
(3,5,6)
Type: FiniteSimplicialComplex(VertexSetAbstract)
(28) -> fundamentalGroup(sproj)
(28) <p | p*p>
Type: GroupPresentation
If anyone would like to try the code it is in usual place:
https://github.com/martinbaker/multivector/blob/master/logic.spad
https://github.com/martinbaker/multivector/blob/master/graph.spad
https://github.com/martinbaker/multivector/blob/master/groupPresentation.spad
https://github.com/martinbaker/multivector/blob/master/algebraictopology.spad
Then compile as follows:
)boot $createLocalLibDb:=false
)co logic
)co graph
)co groupPresentation
)boot $bootStrapMode := true
)co algebraictopology
)boot $bootStrapMode := false
)co algebraictopology
--
You received this message because you are subscribed to the Google Groups "FriCAS -
computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.