Martin Baker wrote:
> 
>  > As a face (part of simplical complex) (1,3) and
>  > (3, 1) are the same face.  And problem is not due to wrong
>  > orientation of input:
> 
> I remember now, it is the same face but we allow it to be included 
> multiple times in different orientations:
> 
> (1) -> ASIMP := FiniteSimplicialComplex(VertexSetAbstract)
>     (1)  FiniteSimplicialComplex(VertexSetAbstract)
>                                                           Type: Type
> (2) -> v2a:List(List(NNI)) := [[1,3],[1,3],[3,1]]
> 
>     (2)  [[1,3],[1,3],[3,1]]
>                                 Type: List(List(NonNegativeInteger))
> (3) -> sc1 := simplicialComplex(vertexSeta(3::NNI),v2a)$ASIMP
> 
>     (3)
>           (1,3)
>           (1,3)
>           -(1,3)
>                     Type: FiniteSimplicialComplex(VertexSetAbstract)
> (4) -> addImpliedFaces(sc1)
> 
>     (4)  [[-(1,3),(1,3),(1,3)]]
>                                      Type: List(List(OrientedFacet))
> (5) -> sc1::DeltaComplex(VertexSetAbstract)
> 
>     (5)
>            1D:[[1,- 2],[1,- 2],[- 1,2]]
>                                Type: DeltaComplex(VertexSetAbstract)
> 
> Under a strict geometric interpretation of a definition of 
> simplicialComplex I suspect that this should not be allowed? But, as we 
> discussed earlier, it is useful not to prevent this to allow 
> construction of interesting delta complexes.

Well, in cases of simplicial complex this is an error: it may
lead to wrong chain and maybe even to wrong homology.  More precisely
if we allow parallel edges (simplices) we need to be careful to
specify boundary.  In case of simplicial complex we take fist
thing with given vertrices as part of boundary.  If there are
multiple simplices with the same boundary this may give
unintended results.  So in simplicial complex we should check
for duplicates and either remove them or signal error.

Delta complex is different: here duplication is explicitely
handled.

>  > - apparently you want chains here.  Chains are not the same as
>  >   complexes.
> 
> I take your point and I would like to pursue your earlier comments about 
> having a separate chain domain (though I'm not sure exactly how).
 
Chains are free module generated by facets (with canonical
orientation).  So you may be able to reuse functions from
FreeModule.
-- 
                              Waldek Hebisch

-- 
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 fricas-devel+unsubscr...@googlegroups.com.
To post to this group, send email to fricas-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to