text: 8
  
  3
  
  3
  
  1
  
  # SemialgebraicSets
  
  PackageEvaluator Build Status
  
  Extension of MultivariatePolynomials to semialgebraic sets, i.e. sets defined by inequalities and equalities between polynomials. The following example shows how to build an algebraic set/algebraic variety
  
  ``````using TypedPolynomials
  @polyvar x y z
  # Algebraic variety https://en.wikipedia.org/wiki/Algebraic_variety#/media/File:Elliptic_curve2.png
  @set y^2 == x^3 - x
  @set x^3 == 2x*y && x^2*y == 2y^2 - x
  @set x*y^2 == x*z - y && x*y == z^2 && x == y*z^4
  @set x^4*y^2 == z^5 && x^3*y^3 == 1 && x^2*y^4 == 2z
  @set x == z^2 && y == z^3
  ``````
  
  Once the algebraic set has been created, you can check whether it is zero-dimensional and if it is the case, you can get the finite number of elements of the set simply by iterating over it, or by using `collect` to transform it into an array containing the solutions.
  
  ``````V = @set y == x^2 && z == x^3
  iszerodimensional(V) # should return false
  V = @set x^2 + x == 6 && y == x+1
  iszerodimensional(V) # should return true
  collect(V) # should return [[2, 3], [-3, -2]]
  ``````
  
  The following example shows how to build an basic semialgebraic set
  
  ``````using TypedPolynomials
  @polyvar x y
  @set x^2 + y^2 <= 1 # Euclidean ball
  # Cutting the algebraic variety https://en.wikipedia.org/wiki/Algebraic_variety#/media/File:Elliptic_curve2.png
  @set y^2 == x^3 - x && x <= 0
  @set y^2 == x^3 - x && x >= 1
  ``````
  
  08/11/2017
  
  1 day ago
  
  51 commits
explanation: The document is a technical description of a package called `SemialgebraicSets`, which extends the `MultivariatePolynomials` package to handle semialgebraic sets. It includes examples of how to define algebraic sets and semialgebraic sets using polynomial equations and inequalities. The document also demonstrates how to check if an algebraic set is zero-dimensional and how to collect the solutions of such sets.
  
  The document does not contain a specific math question or a question and answer.
distilabel_metadata.content: Evaluate the user given text extract and determine if it contains a math question and optionally and answer to this question.
  
  Output rules:
  
  1. Briefly describe the document and mention if it contains a question or a question and answer.
  2. Finalize the output with: Label: no-question,question,question-and-answer,multiple-question,multiple-question-and-answer
distilabel_metadata.role: system
distilabel_metadata.content: 8
  
  3
  
  3
  
  1
  
  # SemialgebraicSets
  
  PackageEvaluator Build Status
  
  Extension of MultivariatePolynomials to semialgebraic sets, i.e. sets defined by inequalities and equalities between polynomials. The following example shows how to build an algebraic set/algebraic variety
  
  ``````using TypedPolynomials
  @polyvar x y z
  # Algebraic variety https://en.wikipedia.org/wiki/Algebraic_variety#/media/File:Elliptic_curve2.png
  @set y^2 == x^3 - x
  @set x^3 == 2x*y && x^2*y == 2y^2 - x
  @set x*y^2 == x*z - y && x*y == z^2 && x == y*z^4
  @set x^4*y^2 == z^5 && x^3*y^3 == 1 && x^2*y^4 == 2z
  @set x == z^2 && y == z^3
  ``````
  
  Once the algebraic set has been created, you can check whether it is zero-dimensional and if it is the case, you can get the finite number of elements of the set simply by iterating over it, or by using `collect` to transform it into an array containing the solutions.
  
  ``````V = @set y == x^2 && z == x^3
  iszerodimensional(V) # should return false
  V = @set x^2 + x == 6 && y == x+1
  iszerodimensional(V) # should return true
  collect(V) # should return [[2, 3], [-3, -2]]
  ``````
  
  The following example shows how to build an basic semialgebraic set
  
  ``````using TypedPolynomials
  @polyvar x y
  @set x^2 + y^2 <= 1 # Euclidean ball
  # Cutting the algebraic variety https://en.wikipedia.org/wiki/Algebraic_variety#/media/File:Elliptic_curve2.png
  @set y^2 == x^3 - x && x <= 0
  @set y^2 == x^3 - x && x >= 1
  ``````
  
  08/11/2017
  
  1 day ago
  
  51 commits
distilabel_metadata.role: user
distilabel_metadata.raw_output_q_a_detector_0: The document is a technical description of a package called `SemialgebraicSets`, which extends the `MultivariatePolynomials` package to handle semialgebraic sets. It includes examples of how to define algebraic sets and semialgebraic sets using polynomial equations and inequalities. The document also demonstrates how to check if an algebraic set is zero-dimensional and how to collect the solutions of such sets.
  
  The document does not contain a specific math question or a question and answer.
  
  Label: no-question