msolve - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


msolve

solve equations in Z mod m

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

msolve(eqns, vars, m)

msolve(eqns, m)

Parameters

eqns

-

set of equations or a single equation

vars

-

(optional) set of names or a name which must not appear among the indeterminates in eqns

m

-

integer

Description

• 

The procedure msolve solves the equations in eqns over the integers modm. It solves for all of the indeterminates occurring in the equations.

• 

If the solution is indeterminate, and if it is possible, a family of solutions is expressed in terms of the names given in vars (or the global names _Z1, _Z2, _Z3 if vars is omitted). These names (which must not coincide with any indeterminates) are then allowed to take any integer values.

• 

Unlike solve, but like isolve, the second, optional argument does not specify variables to solve for, but instead may be used to specify names for parameters of indeterminate solutions. The msolve command always solves for all the indeterminates in eqns.

• 

The msolve command returns NULL if there are no solutions over the integers modm.

• 

In some cases, a partial solution may be returned. If msolve is able to detect that a partial solution may be incomplete, then it sets the global variable _SolutionsMayBeLost to true.

• 

If msolve is unable to solve eqns, but is not able to prove there are no solutions, then FAIL is returned.

• 

The procedure msolve has special code for efficiently handling large systems of equations mod 2.

• 

If you want to solve a single univariate polynomial modm where m is not necessarily prime, see the Roots function.

• 

For solving linear systems of equations modm, use Linsolve, which is known to mod.

Examples

msolve7x+y=2,3x4y=1,19

x=15,y=11

(1)

msolvex2=3,5

In the next example, a family of solutions is found.

msolve2i=3,19

i=13+18_Z1

(2)

In this example, the option vars is used to specify that n should be used in the specification of the family of solutions.

msolve8j=2,n,17

j=3+8n

(3)

See Also

isolve

Linsolve

mod

Roots

solve