RegularChains[ConstructibleSetTools][Difference] - compute the difference of two constructible sets
RegularChains[SemiAlgebraicSetTools][Difference] - compute the difference of two semi-algebraic sets
|
Calling Sequence
|
|
Difference(cs1, cs2, R)
Difference(lrsas1, lrsas2, R)
|
|
Parameters
|
|
cs1, cs2
|
-
|
constructible sets
|
lrsas1
|
-
|
list of regular semi-algebraic systems
|
lrsas2
|
-
|
list of regular semi-algebraic systems
|
R
|
-
|
polynomial ring
|
|
|
|
|
Description
|
|
•
|
This command computes the set-theoretic difference of two constructible sets or two semi-algebraic sets, depending on the input type.
|
•
|
A constructible set must be encoded as an constructible_set object; see the type definition in ConstructibleSetTools.
|
•
|
A semi-algebraic set must be encoded by a list of regular_semi_algebraic_system, see the type definition of RealTriangularize.
|
•
|
The command Difference(cs1, cs2, R) returns a constructible set which is the set theoretic difference of two constructible sets. The polynomial ring may have characteristic zero or a prime characteristic.
|
•
|
The command Difference(lrsas1, lrsas2, R) returns a list of regular semi-algebraic systems, encoding the set-theoretic difference of two semi-algebraic sets. The polynomial ring must have characteristic zero.
|
•
|
The output may contain certain redundancy among the defining regular systems.
|
•
|
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:-Difference or RegularChains:-SemiAlgebraicSetTools:-Difference.
|
|
|
Compatibility
|
|
•
|
The RegularChains[SemiAlgebraicSetTools][Difference] command was introduced in Maple 16.
|
•
|
The lrsas1 and lrsas2 parameters were introduced in Maple 16.
|
|
|
Examples
|
|
>
|
|
>
|
|
>
|
|
>
|
|
First, define a polynomial ring.
>
|
|
| (1) |
Use Triangularize to solve the polynomial equations given by and below.
>
|
|
| (2) |
>
|
|
| (3) |
>
|
|
| (4) |
>
|
|
| (5) |
Now remove points which cancel the following .
>
|
|
| (6) |
First, build the common solution set of and as a constructible set and also build one with .
>
|
|
| (7) |
>
|
|
| (8) |
>
|
|
| (9) |
Then use Difference to find a new constructible set which encodes those points that cancel and , but do not cancel .
>
|
|
| (10) |
You can check the result using the Info command: cs2 consists of six points, and five of them cancel .
>
|
|
| (11) |
The set cs3 consists of a single point which does not cancel .
>
|
|
| (12) |
An example on semi-algebraic set difference: to check whether or not two formula/conditions are equivalent. # Semi-algebraic Difference, verifying results
>
|
|
>
|
|
>
|
|
| (13) |
>
|
|
| (14) |
>
|
|
>
|
|
| (15) |
>
|
|
| (16) |
Verify dec1 = dec2 as set of points by Difference.
>
|
|
| (17) |
>
|
|
| (18) |
|
|
References
|
|
|
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.
|
|
|