compute the inverse of a matrix modulo a regular chain - Maple Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Mathematics : Factorization and Solving Equations : RegularChains : MatrixTools Subpackage : RegularChains/MatrixTools/MatrixInverse

RegularChains[MatrixTools][MatrixInverse] - compute the inverse of a matrix modulo a regular chain

Calling Sequence

MatrixInverse(A, rc, R)

Parameters

A

-

square Matrix with coefficients in the ring of fractions of R

rc

-

regular chain of R

R

-

polynomial ring

Description

• 

The command MatrixInverse(A, rc, R) returns two lists.

• 

The first list the command returns is a list of pairs Bi,rci where rci is a regular chain and Bi is the inverse of A modulo the saturated ideal of rci.

• 

The second list the command returns is a list of triplets noInv,A,rci where rci is a regular chain and A is the input matrix such that A is not invertible modulo the saturated ideal of rci.

• 

All the returned regular chains rci form a triangular decomposition of rc (in the sense of Kalkbrener).

• 

It is assumed that rc is strongly normalized.

• 

The algorithm is an adaptation of the algorithm of Bareiss.

• 

This command is part of the RegularChains[MatrixTools] package, so it can be used in the form MatrixInverse(..) only after executing the command with(RegularChains[MatrixTools]).  However, it can always be accessed through the long form of the command by using RegularChains[MatrixTools][MatrixInverse](..).

Examples

Automatic case discussion.

withRegularChains:withChainTools:withMatrixTools:

R:=PolynomialRingy,z;rc:=EmptyR

R:=polynomial_ring

rc:=regular_chain

(1)

Assume we have two variables y and z that have the same square and z is a 4th root of -1. Suppose we need to compute modulo this relation.

rc:=Chainz4+1,y2z2,rc,R:Equationsrc,R

y2z2,z4+1

(2)

m:=Matrix1,y+z,0,yz

m:=1y+z0yz

(3)

We want to compute the inverse of the previous matrix.

mim:=MatrixInversem,rc,R

mim:=10012z3,regular_chain,noInv,1y+z0yz,regular_chain

(4)

Let us check the first result.

m1:=mim111;rc1:=mim112;Equationsrc1,R

m1:=10012z3

rc1:=regular_chain

y+z,z4+1

(5)

MatrixMultiplym1,m,rc1,R

1001

(6)

Consider now this other matrix.

m:=Matrix1,y+z,2,yz

m:=1y+z2yz

(7)

mim:=MatrixInversem,rc,R

mim:=10z312z3,regular_chain,01212z314z3,regular_chain,

(8)

m1:=mim111;rc1:=mim112

m1:=10z312z3

rc1:=regular_chain

(9)

m2:=mim121;rc2:=mim122

m2:=01212z314z3

rc2:=regular_chain

(10)

MatrixMultiplym2,m,rc2,R

1001

(11)

MatrixMultiplym2,m,rc2,R

1001

(12)

Get a generic answer that would hold both cases.

clr:=MatrixCombinerc1,rc2,R,m1,m2

clr:=12yz3+1214yz3+1414z2y34z318z2y+38z3,regular_chain

(13)

Check.

MatrixMultiplyclr11,m,clr12,R

1001

(14)

See Also

Chain, Empty, Equations, IsStronglyNormalized, IsZeroMatrix, JacobianMatrix, LowerEchelonForm, MatrixCombine, MatrixMultiply, MatrixOverChain, MatrixTools, NormalForm, PolynomialRing, RegularChains


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam