CGAL 6.2 - Algebraic Kernel: AlgebraicKernel_d_2 Concept Reference

CGAL 6.2 - Algebraic Kernel

Loading...
Searching...
No Matches
List of all members | Classes
AlgebraicKernel_d_2 Concept Reference
Reference Manual » Concepts » Bivariate Algebraic Kernel

## Definition

A model of the `AlgebraicKernel_d_2` concept gathers necessary tools for solving and handling bivariate polynomial systems of general degree \( d\).

Refines
  `AlgebraicKernel_d_1`
  `CopyConstructible`
  `Assignable`

Has models
  `CGAL::Algebraic_kernel_d_2`

See also
  `AlgebraicKernel_d_1`

## Concepts
concept | ApproximateAbsoluteX_2
| A model of `AlgebraicKernel_d_2::ApproximateAbsoluteX_2` is an `AdaptableBinaryFunction` that computes an approximation of the \( x\)-coordinate of an `AlgebraicKernel_d_2::Algebraic_real_2` value with respect to a given absolute precision. More...
concept | ApproximateAbsoluteY_2
| A model of `AlgebraicKernel_d_2::ApproximateAbsoluteY_2` is an `AdaptableBinaryFunction` that computes an approximation of the \( y\)-coordinate of an `AlgebraicKernel_d_2::Algebraic_real_2` value with respect to a given absolute precision. More...
concept | ApproximateRelativeX_2
| A model of `AlgebraicKernel_d_2::ApproximateRelativeX_2` is an `AdaptableBinaryFunction` that computes an approximation of the \( x\)-coordinate of an `AlgebraicKernel_d_2::Algebraic_real_2` value with respect to a given relative precision. More...
concept | ApproximateRelativeY_2
| A model of `AlgebraicKernel_d_2::ApproximateRelativeY_2` is an `AdaptableBinaryFunction` that computes an approximation of the \( y\)-coordinate of an `AlgebraicKernel_d_2::Algebraic_real_2` value with respect to a given relative precision. More...
concept | BoundBetweenX_2
| Computes a number of type `AlgebraicKernel_d_1::Bound` in-between the first coordinates of two `AlgebraicKernel_d_2::AlgebraicReal_2`. More...
concept | BoundBetweenY_2
| Computes a number of type `AlgebraicKernel_d_1::Bound` in-between the second coordinates of two `AlgebraicKernel_d_2::AlgebraicReal_2`. More...
concept | CompareX_2
| Compares the first coordinates of `AlgebraicKernel_d_2::Algebraic_real_2`s. More...
concept | CompareXY_2
| Compares `AlgebraicKernel_d_2::Algebraic_real_2`s lexicographically. More...
concept | CompareY_2
| Compares the second coordinated of `AlgebraicKernel_d_2::Algebraic_real_2`s. More...
concept | ComputePolynomialX_2
| Computes a univariate square free polynomial \( p\), such that the first coordinate of a given `AlgebraicKernel_d_2::Algebraic_real_2` is a real root of \( p\). More...
concept | ComputePolynomialY_2
| Computes a univariate square free polynomial \( p\), such that the second coordinate of a given `AlgebraicKernel_d_2::Algebraic_real_2` is a real root of \( p\). More...
concept | ComputeX_2
| Computes the first coordinate of an `AlgebraicKernel_d_2::AlgebraicReal_2`. More...
concept | ComputeY_2
| Computes the second coordinate of an `AlgebraicKernel_d_2::AlgebraicReal_2`. More...
concept | ConstructAlgebraicReal_2
| Constructs an `AlgebraicKernel_d_2::Algebraic_real_2`. More...
concept | IsCoprime_2
| Computes whether a given pair of bivariate polynomials is coprime. More...
concept | Isolate_2
| Computes an isolating box for a given `AlgebraicKernel_d_2::Algebraic_real_2`. More...
concept | IsolateX_2
| Computes an isolating interval for the first coordinate of an `AlgebraicKernel_d_2::Algebraic_real_2` with respect to the real roots of a univariate polynomial. More...
concept | IsolateY_2
| Computes an isolating interval for the second coordinate of an `AlgebraicKernel_d_2::Algebraic_real_2` with respect to the real roots of a univariate polynomial. More...
concept | IsSquareFree_2
| Computes whether the given bivariate polynomial is square free. More...
concept | IsZeroAt_2
| Computes whether an `AlgebraicKernel_d_2::Polynomial_2` is zero at a given `AlgebraicKernel_d_2::Algebraic_real_2`. More...
concept | MakeCoprime_2
| Computes for a given pair of bivariate polynomials \( p_1\), \( p_2\) their common part \( g\) and coprime parts \( q_1\), \( q_2\) respectively. More...
concept | MakeSquareFree_2
| Returns a square free part of a bivariate polynomial. More...
concept | NumberOfSolutions_2
| Computes the number of real solutions of the given bivariate polynomial system. More...
concept | SignAt_2
| Computes the sign of a bivariate polynomial `AlgebraicKernel_d_2::Polynomial_2` at a value of type `AlgebraicKernel_d_2::Algebraic_real_2`. More...
concept | Solve_2
| Computes the real zero-dimensional solutions of a bivariate polynomial system. The multiplicity stored in the output iterator is the multiplicity in the system. More...
concept | SquareFreeFactorize_2
| Computes a square free factorization of an `AlgebraicKernel_d_2::Polynomial_2`. More...

## Types
typedef unspecified_type | Polynomial_2
| A bivariate polynomial that is a model of `Polynomial_d`, where `CGAL::Polynomial_traits_d<Polynomial_2>::Innermost_coefficient_type` is `AlgebraicKernel_d_1::Coefficient`.
typedef unspecified_type | Algebraic_real_2
| A type that is used to represent real solutions of bivariate zero dimensional polynomial systems.

## Functors
typedef unspecified_type | Construct_algebraic_real_2
| A model of `AlgebraicKernel_d_2::ConstructAlgebraicReal_2`.
typedef unspecified_type | Compute_polynomial_x_2
| A model of `AlgebraicKernel_d_2::ComputePolynomialX_2`.
typedef unspecified_type | Compute_polynomial_y_2
| A model of `AlgebraicKernel_d_2::ComputePolynomialY_2`.
typedef unspecified_type | Isolate_2
| A model of `AlgebraicKernel_d_2::Isolate_2`.
typedef unspecified_type | Isolate_x_2
| A model of `AlgebraicKernel_d_2::IsolateX_2`.
typedef unspecified_type | Isolate_y_2
| A model of `AlgebraicKernel_d_2::IsolateY_2`.
typedef unspecified_type | Is_square_free_2
| A model of `AlgebraicKernel_d_2::IsSquareFree_2`.
typedef unspecified_type | Make_square_free_2
| A model of `AlgebraicKernel_d_2::MakeSquareFree_2`.
typedef unspecified_type | Square_free_factorize_2
| A model of `AlgebraicKernel_d_2::SquareFreeFactorize_2`.
typedef unspecified_type | Is_coprime_2
| A model of `AlgebraicKernel_d_2::IsCoprime_2`.
typedef unspecified_type | Make_coprime_2
| A model of `AlgebraicKernel_d_2::MakeCoprime_2`.
typedef unspecified_type | Solve_2
| A model of `AlgebraicKernel_d_2::Solve_2`.
typedef unspecified_type | Number_of_solutions_2
| A model of `AlgebraicKernel_d_2::NumberOfSolutions_2`.
typedef unspecified_type | Sign_at_2
| A model of `AlgebraicKernel_d_2::SignAt_2`.
typedef unspecified_type | Compare_x_2
| A model of `AlgebraicKernel_d_2::CompareX_2`.
typedef unspecified_type | Compare_y_2
| A model of `AlgebraicKernel_d_2::CompareY_2`.
typedef unspecified_type | Compare_xy_2
| A model of `AlgebraicKernel_d_2::CompareXY_2`.
typedef unspecified_type | Bound_between_x_2
| A model of `AlgebraicKernel_d_2::BoundBetweenX_2`.
typedef unspecified_type | Bound_between_y_2
| A model of `AlgebraicKernel_d_2::BoundBetweenY_2`.
typedef unspecified_type | Approximate_absolute_x_2
| A model of `AlgebraicKernel_d_2::ApproximateAbsoluteX_2`.
typedef unspecified_type | Approximate_absolute_y_2
| A model of `AlgebraicKernel_d_2::ApproximateAbsoluteY_2`.
typedef unspecified_type | Approximate_relative_x_2
| A model of `AlgebraicKernel_d_2::ApproximateRelativeX_2`.
typedef unspecified_type | Approximate_relative_y_2
| A model of `AlgebraicKernel_d_2::ApproximateRelativeY_2`.

## Operations
For each of the function objects above, there must exist a member function that requires no arguments and returns an instance of that function object. The name of the member function is the uncapitalized name of the type returned with the suffix `_object` appended. For example, for the function object `AlgebraicKernel_d_2::Bound_betweenX_2` the following member function must exist:
AlgebraicKernel_d_2::Bound_between_x_2 | bound_between_x_2_object () const

## Member Typedef Documentation

## ◆ Algebraic_real_2

typedef unspecified_type AlgebraicKernel_d_2::Algebraic_real_2

A type that is used to represent real solutions of bivariate zero dimensional polynomial systems.

A model of `DefaultConstructible`, `CopyConstructible` and `Assignable`.