# ratmat.at Function References¶

## gcd¶

gcd:mat M->int Defined in line number 13.

## simplify¶

simplify:ratmat(M,,d)->ratmat Defined in line number 16.

## /¶

/:mat M,int d->ratmat Defined in line number 19.

## *¶

*:rat f,mat M->ratmat Defined in line number 23.

## /¶

/:mat M,rat f->ratmat Defined in line number 24.

## entry¶

entry:ratmat(M,,d),int i,int j->rat Defined in line number 26.

## matrix¶

matrix:(int,int)(r,c),(int,int->rat) f->ratmat Defined in line number 29.

## n_rows¶

n_rows:ratmat(M,,)->int Defined in line number 34.

## n_columns¶

n_columns:ratmat(M,,)->int Defined in line number 35.

## columns¶

columns:ratmat(M,,d)->[ratvec] Defined in line number 37.

## rows¶

rows:ratmat(M,,d)->[ratvec] Defined in line number 38.

## column¶

column:ratmat(M,,d),int j->ratvec Defined in line number 39.

## row¶

row:ratmat(M,,d),int i->ratvec Defined in line number 40.

## columns_with¶

columns_with:(int,ratvec->bool) p,ratmat(M,,d)->ratmat Defined in line number 42.

## columns_with¶

columns_with:(ratvec->bool) p,ratmat T->ratmat Defined in line number 45.

## columns_with¶

columns_with:(int->bool) p,ratmat(M,,d)->ratmat Defined in line number 47.

## rows_with¶

rows_with:(int,ratvec->bool) p,ratmat(M,,d)->ratmat Defined in line number 50.

## rows_with¶

rows_with:(ratvec->bool) p,ratmat T->ratmat Defined in line number 53.

## rows_with¶

rows_with:(int->bool) p,ratmat(M,,d)->ratmat Defined in line number 55.

## det¶

det:ratmat(M,,d)->rat Defined in line number 58.

## ^¶

^:ratmat(M,,d)->ratmat Defined in line number 60.

## +¶

+:ratmat(M,,d),ratmat(MM,,dd)->ratmat Defined in line number 62.

## -¶

-:ratmat(M,,d),ratmat(MM,,dd)->ratmat Defined in line number 63.

## *¶

*:ratvec v,ratmat(M,,d)->ratvec Defined in line number 66.

## *¶

*:ratmat(M,,d),ratvec v->ratvec Defined in line number 67.

## *¶

*:ratmat(M,,d),mat MM->ratmat Defined in line number 69.

## *¶

*:mat M,ratmat(MM,,d)->ratmat Defined in line number 70.

## *¶

*:ratmat(M,,d),ratmat(MM,,dd)->ratmat Defined in line number 71.

## /¶

/:ratmat(M,,d)->ratmat Defined in line number 73.

## ^¶

^:ratmat(M,,d):Md,int e->ratmat Defined in line number 77.

## ratmat_as_mat¶

ratmat_as_mat:ratmat(M,,d)->mat Defined in line number 80.

## mat_as_ratmat¶

mat_as_ratmat:mat M->ratmat Defined in line number 82.

## diagonal¶

diagonal:ratvec v->ratmat Defined in line number 83.

## ratvecs_as_ratmat¶

ratvecs_as_ratmat:[ratvec] A->ratmat Defined in line number 86.

## det¶

det:[ratvec] M->rat Defined in line number 89.

## ^¶

^:[ratvec] M->ratmat Defined in line number 90.

## *¶

*:[ratvec] M,ratmat MM->ratmat Defined in line number 91.

## *¶

*:ratmat M,[ratvec] MM->ratmat Defined in line number 92.

## +¶

+:[ratvec] M,ratmat MM->ratmat Defined in line number 93.

## +¶

+:ratmat M,[ratvec] MM->ratmat Defined in line number 94.

## -¶

-:[ratvec] M,ratmat MM->ratmat Defined in line number 95.

## -¶

-:ratmat M,[ratvec] MM->ratmat Defined in line number 96.

## inverse¶

inverse:ratmat(M,,d)->ratmat Defined in line number 98.

## solve¶

solve:ratmat(M,,d), ratvec v->[ratvec] Defined in line number 99.

## *¶

*:[ratvec] M,mat MM->ratmat Defined in line number 102.

## *¶

*:mat M,[ratvec] MM->ratmat Defined in line number 103.

## +¶

+:[ratvec] M,mat MM->ratmat Defined in line number 104.

## +¶

+:mat M,[ratvec] MM->ratmat Defined in line number 105.

## -¶

-:[ratvec] M,mat MM->ratmat Defined in line number 106.

## -¶

-:mat M,[ratvec] MM->ratmat Defined in line number 107.

## rational_inverse¶

rational_inverse:mat M->ratmat Defined in line number 110.

## right_inverse¶

right_inverse:ratmat M->ratmat Defined in line number 113.

Right inverse of a rational matrix

## left_inverse¶

left_inverse:ratmat M->ratmat Defined in line number 117.

Left inverse of rational matrix

## ratvec_to_string¶

ratvec_to_string:ratvec v->string Defined in line number 119.

## show¶

show:ratmat(M,,d)->void Defined in line number 126.

## ratmat¶

(mat,string,int) Defined in line number 10.