RegularChains
ConstructibleSetTools[Complement]
compute the complement of a constructible set
SemiAlgebraicSetTools[Complement]
compute the complement of a semi-algebraic set
Calling Sequence
Parameters
Description
Examples
References
Compatibility
Complement(cs, R)
Complement(lrsas, R)
cs
-
constructible set
lrsas
list of regular semi-algebraic systems
R
polynomial ring
The command Complement(cs, R) returns the complement of the constructible set cs in the affine space associated with R. If K is the algebraic closure of the coefficient field of R and n is the number of variables in R, then this affine space is Kn. The polynomial ring may have characteristic zero or a prime characteristic.
The command Complement(lrsas, R) returns the complement of the semi-algebraic set represented by lrsas (see RealTriangularize for this representation). The polynomial ring must have characteristic zero. The empty semi-algebraic set is encoded by the empty list.
The empty constructible set represents the empty set of Kn.
This command is available once RegularChains[ConstructibleSetTools] submodule or RegularChains[SemiAlgebraicSetTools] submodule have been loaded. It can always be accessed through one of the following long forms: RegularChains[ConstructibleSetTools][Complement] or RegularChains[SemiAlgebraicSetTools][Complement].
with⁡RegularChains:
with⁡ChainTools:
with⁡ConstructibleSetTools:
First define the polynomial ring R and two polynomials of R.
R≔PolynomialRing⁡x,a,b,c,d
R≔polynomial_ring
F≔a⁢x+c
G≔b⁢x+d
The goal is to determine for which parameter values of a, b, c and d the generic linear equations F and G have solutions. Project the variety defined by F and G onto the parameter space.
cs≔Projection⁡F,G,4,R
cs≔constructible_set
Info⁡cs,R
d⁢a−c⁢b,d,b,b,d,a,c,d,1,a,b,c,d,1
Therefore, four regular systems encode this projection in the parameter space. The complement of cs should be those points that make the linear equations have no common solutions.
com_cs≔Complement⁡cs,R
com_cs≔constructible_set
Info⁡com_cs,R
,d⁢a−b⁢c,d,d,c,b,a,b,d,a,b,d,c
If you call Complement twice, you should retrieve the constructible set cs.
com_com_cs≔Complement⁡com_cs,R
com_com_cs≔constructible_set
IsContained⁡cs,com_com_cs,RandIsContained⁡com_com_cs,cs,R
true
Semi-algebraic case
R≔PolynomialRing⁡a,b,c:
S1≔a2−c⁢a−a=0,0<a−c
out≔RealTriangularize⁡S1,R
out≔regular_semi_algebraic_system,regular_semi_algebraic_system
compl≔Complement⁡out,R
compl≔regular_semi_algebraic_system,regular_semi_algebraic_system,regular_semi_algebraic_system
expected≔a2−c⁢a−a≠0,a−c≤0
expected≔map⁡t↦op⁡RealTriangularize⁡t,R,expected
expected≔regular_semi_algebraic_system,regular_semi_algebraic_system,regular_semi_algebraic_system
Verify compl = expected as set of points by Difference.
Difference⁡compl,expected,R
Difference⁡expected,compl,R
Chen, C.; Golubitsky, O.; Lemaire, F.; Moreno Maza, M.; and Pan, W. "Comprehensive Triangular Decomposition". Proc. CASC 2007, LNCS, Vol. 4770: 73-101. Springer, 2007.
Chen, C.; Davenport, J.-D.; Moreno Maza, M.; Xia, B.; and Xiao, R. "Computing with semi-algebraic sets represented by triangular decomposition". Proceedings of 2011 International Symposium on Symbolic and Algebraic Computation (ISSAC 2011), ACM Press, pp. 75--82, 2011.
The RegularChains[SemiAlgebraicSetTools][Complement] command was introduced in Maple 16.
The lrsas parameter was introduced in Maple 16.
For more information on Maple 16 changes, see Updates in Maple 16.
See Also
ConstructibleSet
ConstructibleSetTools
Difference
Intersection
Projection
RealTriangularize
SemiAlgebraicSetTools
Union
Download Help Document