PointChain
Author: Kurt Pagani
Date Created: Fri Sep 27 13:05:21 CEST 2024
License: BSD
References:
Description: barycenter
point : Symbol -> %
\spad{point S} constructs a single point, which is the basis to
generate chains of any degree. \spad{S} may be any symbol,
however, uppercase letters are most adequate of course.
_* : (%,%) -> %
\spad{c1*c2} multiplication of chains.
_* : (R,%) -> %
\spad{r * c} multiplication of a chain by a scalar from R.
_+ : (%,%) -> %
\spad{c1 + c2} addition of chains.
_- : (%,%) -> %
\spad{c1 -c2} subtraction of chains.
_- : % -> %
\spad{-c} negative of a chain.
_= : (%, %) -> Boolean
\spad{c1 = c2} equality f chains.
1 : () -> %
\spad{1} the pseudo chain 1 (degree = -1).
0 : () -> %
\spad{0} the zero chain.
constant? : % -> Boolean
\spad{constant? c} true if the chain contains no point
(i.e. not really a chain).
degree : % -> Integer
\spad{degree c} returns the highest degree of a chain. Note that the
degree of a chain is one less than a corresponding
\spad{XDistributedPolynomial}.
leadingMonomial : % -> %
\spad{leadingMonomial c} returns the leading monomial (including
the coefficient).
reductum : % -> %
\spad{reductum c} returns the rest of the chain, that is without
leading monomial.
leadingCoefficient: % -> R
\spad{leadingCoefficient c} returns the coefficient of the
leading monomial.
leadingSupport: % -> List(%)
\spad{leadingSupport c} gives the ordered list of points in the
leading monomial, so that \spad{reduce(_*,%)} will reproduce
the monomial (w/o coefficient).
bdry : % -> %
\spad{bdry c} computes the boundary of the chain (recursively).
homogeneous? : % -> Boolean
\spad{homgogeneous? x} is true if all terms have the same
degree.
numberOfMonomials : % -> NonNegativeInteger
\spad{numberOfMonomials x} is what it says.
zero? : % -> Boolean
\spad{zero? c} is true if c the zero chain.
one? : % -> Boolean
\spad{one? c} is true if c is the \spad{1}-element of the scalar
field.
latex : % -> String
\spad{latex c} returns a LaTeX representation of the chain.
normalize : % -> %
\spad{normalize c} sorts all points in all monomials lex and
reconstructs the chain.
spaceDim : (%,PositiveInteger) -> %
\spad{spaceDim(c,n)} removes all terms having degree greater
than \spad{n}, which serves as space dimension of an affine
space.
barycenter : % -> Union(%,"failed")
\spad{barycenter x} returns the barycenter of a \spad{0-chain},
in case there is one.
retract: % -> XDP
\spad{retract c} retracts the chain to a \spad{XDistributedPolynomial},
so that more tools are availabe for manipulations.
coerce: XDP -> %
\spad{coerce p} coerces a \spad{XDistributedPolynomial p} to a chain,
whereby all terms not conforming to a chain will be removed.