 ConstructibleSet - Maple Help

RegularChains[ConstructibleSetTools]

 ConstructibleSet
 construct a constructible set from a list or set of regular systems Calling Sequence ConstructibleSet(lrs, R) Parameters

 lrs - list or set of regular systems R - polynomial ring Description

 • 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. Examples

This example demonstrates how to build a constructible set structure.

 > $\mathrm{with}\left(\mathrm{RegularChains}\right):$
 > $\mathrm{with}\left(\mathrm{ConstructibleSetTools}\right):$

First, define a polynomial ring.

 > $R≔\mathrm{PolynomialRing}\left(\left[x,y,a,b,c,d\right]\right)$
 ${R}{≔}{\mathrm{polynomial_ring}}$ (1)

Consider the following linear polynomial system.

 > $\mathrm{sys}≔\left[ax+by,cx+dy\right]$
 ${\mathrm{sys}}{≔}\left[{a}{}{x}{+}{b}{}{y}{,}{c}{}{x}{+}{d}{}{y}\right]$ (2)

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.

 > $\mathrm{dec}≔\mathrm{Triangularize}\left(\mathrm{sys},R,\mathrm{output}=\mathrm{lazard}\right)$
 ${\mathrm{dec}}{≔}\left[{\mathrm{regular_chain}}{,}{\mathrm{regular_chain}}{,}{\mathrm{regular_chain}}{,}{\mathrm{regular_chain}}{,}{\mathrm{regular_chain}}{,}{\mathrm{regular_chain}}\right]$ (3)

To build constructible sets, you first need to create regular systems. For simplicity, just let $\left[1\right]$ be the inequation part of each regular system.

 > $\mathrm{lrs}≔\mathrm{map}\left(\mathrm{RegularSystem},\mathrm{dec},\left[1\right],R\right)$
 ${\mathrm{lrs}}{≔}\left[{\mathrm{regular_system}}{,}{\mathrm{regular_system}}{,}{\mathrm{regular_system}}{,}{\mathrm{regular_system}}{,}{\mathrm{regular_system}}{,}{\mathrm{regular_system}}\right]$ (4)

Then $\mathrm{lrs}$ is a list of regular systems by which you can create a constructible set cs.

 > $\mathrm{cs}≔\mathrm{ConstructibleSet}\left(\mathrm{lrs},R\right)$
 ${\mathrm{cs}}{≔}{\mathrm{constructible_set}}$ (5)

Use Info to see its internal defining polynomials.

 > $\mathrm{Info}\left(\mathrm{cs},R\right)$
 $\left[\left[{x}{,}{y}\right]{,}\left[{1}\right]\right]{,}\left[\left[{c}{}{x}{+}{y}{}{d}{,}{d}{}{a}{-}{b}{}{c}\right]{,}\left[{1}\right]\right]{,}\left[\left[{y}{,}{a}{,}{c}\right]{,}\left[{1}\right]\right]{,}\left[\left[{x}{,}{b}{,}{d}\right]{,}\left[{1}\right]\right]{,}\left[\left[{a}{}{x}{+}{y}{}{b}{,}{c}{,}{d}\right]{,}\left[{1}\right]\right]{,}\left[\left[{a}{,}{b}{,}{c}{,}{d}\right]{,}\left[{1}\right]\right]$ (6)