> <\body> The geometric resolution algorithm is a Gröbner-free alternative for solving polynomial systems of equations and inequations. It computes a lifting fiber of the system (see [, , - A Gröbner free alternative for polynomial system solving]). Its current implementation in handles only certain polynomial systems in input, that are systems of equations that form a regular reduced sequence. This restriction implies in particular that there are the same number of equations and variables and that the solutions of the system are a set of points. The geometric resolution algorithm is based on three steps which are repeated as many times as there are variables: a lifting step, an intersection step and a cleaning step. A new feature is that a relaxed variant of the lifting step is implemented for the first time. It uses the recursive and -adic integers|../../../algebramix/doc/html/p_adic.en.html> framework of the |../../../algebramix/doc/texmacs/index.en.tm> package. The default lifting variant is called with the implementation variant |mmx::lifting_fiber_naive> of the type C,V\>|mmx::lifting_fiber>. The relaxed variant is obtained with the variant V\>|mmx::lifting_fiber_relaxed>. \; <\session|mathemagix|default> <\input> <|input> use "geomsolvex" <\input> <|input> X == coordinate ('x); Y == coordinate ('y); <\input> <|input> x == polynomial_dag (1 :\ Rational, X); y == polynomial_dag (1 :\ Rational, Y); <\input> <|input> f1 == x^2 + y^2 - 1; f2 == x^2 + x * y - 2; <\unfolded-io> <|unfolded-io> probable_geometric_solve_reduced_regular ([f1, f2]) <|unfolded-io> +y-1,x+x*y-2,|>>|]>,,,x,x-*x+2,4*x-5*x,-8,3*x-2|]>|)>> Let us explain roughly what a lifting fiber is on this example. It starts with a linear change of variable <\equation*> >|>>>>=|>>|)>*>|>>>>+>|>>>> which is trivial in this case. Then we have a minimal polynomial =u-*u+2> and parametrizations (one per variable) <\equation*> X=|Q>=-8|4*u-5*u>,Y=|Q>=-2|4*u-5*u> over a common denominator >. These parametrizations satisfy the input system <\equation*> f/Q,S/Q|)>=0 Q. <\session|mathemagix|default> <\input> <|input> p: Integer == 101; <\input> <|input> x == polynomial_dag (1 :\ Integer, X); y == polynomial_dag (1 :\ Integer, Y); <\input> <|input> f1 == x^2 + y^2 - 1; f2 == x^2 + x * y - 2; <\unfolded-io> <|unfolded-io> probable_geometric_solve_reduced_regular ([f1 mod p, f2 mod p]) <|unfolded-io> +y-1,x+x*y-2,|>>|]>,,,x,x+79*x+23*x+68*x+36,1,+99*x+60*x+59|]>|)>> For long computations, verbosity can be enabled by setting . . If you don't have this file, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.> <\initial> <\collection>