construct a constructible set from a list or set of regular systems
list or set of regular systems
The command ConstructibleSet(lrs, R) returns a constructible set defined by the list lrs of regular systems.
A point belongs to a constructible set if and only if it is a solution of one of its defining regular systems. That is, a constructible set is the union of the solution sets of its defining regular systems.
Since a regular system always defines a nonempty set, a constructible set is empty if and only if its list of defining regular systems is empty.
This command is part of the RegularChains[ConstructibleSetTools] package, so it can be used in the form ConstructibleSet(..) only after executing the command with(RegularChains[ConstructibleSetTools]). However, it can always be accessed through the long form of the command by using RegularChains[ConstructibleSetTools][ConstructibleSet](..).
See ConstructibleSetTools and RegularChains for the related mathematical concepts, in particular for the ideas of a constructible set, a regular system, and a regular chain.
This example demonstrates how to build a constructible set structure.
First, define a polynomial ring.
R ≔ PolynomialRing⁡x,y,a,b,c,d
Consider the following linear polynomial system.
sys ≔ a⁢x+b⁢y,c⁢x+d⁢y
The command Triangularize with lazard option decomposes the solution set by means of regular chains. Each regular chain describes a group of solutions with certain mathematical meaning. See RegularChains for more information.
dec ≔ Triangularize⁡sys,R,output=lazard
To build constructible sets, you first need to create regular systems. For simplicity, just let 1 be the inequation part of each regular system.
lrs ≔ map⁡RegularSystem,dec,1,R
Then lrs is a list of regular systems by which you can create a constructible set cs.
cs ≔ ConstructibleSet⁡lrs,R
Use Info to see its internal defining polynomials.
Download Help Document