Does anyone have any validated examples that I could use to check my
homology (using Waldeks method) and homotopy code?
Below are some examples of homology and homotopy from simplicial and
cubical complexes. I think the results are starting to look quite
promising. There is obviously a problem with the homotopy since
fundamental group is giving a different result for triangle and square.
Looks like there is also a problem with projective plane since this
gives [Z,C2,0] but sage gives:
RP4 = simplicial_complexes.RealProjectiveSpace(2)
RP4.homology()
{0: 0, 1: C2, 2: 0}
I would appreciate any help to improve and validate the code.
Here are some results from my SPAD code:
(Note: low dimensions are on the left)
fillTriangle := sphereSolid(2)$SimplicialComplexFactory
(1)
(1,2,3)
Type: FiniteSimplicialComplex(VertexSetAbstract)
homology(fillTriangle)
(2) [Z,0,0]
Type: List(Homology)
fundamentalGroup(fillTriangle)
(3) < | >
Type: GroupPresentation
fillSquare := sphereSolid(2)$CubicalComplexFactory
(4)
(1..2,1..2)
Type: FiniteCubicalComplex(VertexSetAbstract)
homology(fillSquare)
(5) [Z,0,0]
Type: List(Homology)
fundamentalGroup(fillSquare)
(6) <d | >
Type: GroupPresentation
fillTetra := sphereSolid(3)$SimplicialComplexFactory
(7)
(1,2,3,4)
Type: FiniteSimplicialComplex(VertexSetAbstract)
homology(fillTetra)
(8) [Z,0,0,0]
Type: List(Homology)
fundamentalGroup(fillTetra)
(9) < | >
Type: GroupPresentation
fillCube := sphereSolid(3)$CubicalComplexFactory
(10)
(1..2,1..2,1..2)
Type: FiniteCubicalComplex(VertexSetAbstract)
homology(fillCube)
(11) [Z,0,0,0]
Type: List(Homology)
fundamentalGroup(fillCube)
- 1
(12) <k l m n | m*l *k>
Type: GroupPresentation
triangle := sphereSurface(2)$SimplicialComplexFactory
(13)
(1,2)
-(1,3)
(2,3)
Type: FiniteSimplicialComplex(VertexSetAbstract)
homology(triangle)
(14) [Z,Z]
Type: List(Homology)
fundamentalGroup(triangle)
(15) <c | >
Type: GroupPresentation
tetra := sphereSurface(3)$SimplicialComplexFactory
(16)
(1,2,3)
-(1,2,4)
(1,3,4)
-(2,3,4)
Type: FiniteSimplicialComplex(VertexSetAbstract)
homology(tetra)
(17) [Z,0,Z]
Type: List(Homology)
fundamentalGroup(tetra)
(18) < | >
Type: GroupPresentation
torus := 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)
homology(torus)
(20) [Z,Z*2,Z]
Type: List(Homology)
fundamentalGroup(torus)
- 1 - 1
(21) <o t w | o*w *t o*t*w >
Type: GroupPresentation
proj := projectivePlane()$SimplicialComplexFactory
(22)
(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)
homology(proj)
(23) [Z,C2,0]
Type: List(Homology)
fundamentalGroup(proj)
(24) <p | p*p>
Type: GroupPresentation
klein := kleinBottle()$SimplicialComplexFactory
(25)
(3,4,8)
(2,3,4)
(2,4,6)
(2,6,8)
(2,5,8)
(3,5,7)
(2,3,7)
(1,2,7)
(1,2,5)
(1,3,5)
(4,5,8)
(4,5,7)
(4,6,7)
(1,6,7)
(1,3,6)
(3,6,8)
Type: FiniteSimplicialComplex(VertexSetAbstract)
homology(klein)
(26) [Z,Z+C2,0]
Type: List(Homology)
fundamentalGroup(klein)
- 1
(27) <v w z | w*z *v v*z*w>
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
)co algebraictopology
)boot $bootStrapMode := false
)co algebraictopology
Martin B
--
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.