aboutsummaryrefslogtreecommitdiff
path: root/src/algebra
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2011-02-14 01:23:00 +0000
committerdos-reis <gdr@axiomatics.org>2011-02-14 01:23:00 +0000
commit9fb26d710b0b22cc6a7fd27de9cab4552b8e85a3 (patch)
tree8858656bb51bebcd2dfb56201852af34885c8f6b /src/algebra
parent486ade17c9938d888d341045260af26148e233fc (diff)
downloadopen-axiom-9fb26d710b0b22cc6a7fd27de9cab4552b8e85a3.tar.gz
Remove explicit call to autoCoerce
Diffstat (limited to 'src/algebra')
-rw-r--r--src/algebra/groebf.spad.pamphlet6
-rw-r--r--src/algebra/rep2.spad.pamphlet12
2 files changed, 8 insertions, 10 deletions
diff --git a/src/algebra/groebf.spad.pamphlet b/src/algebra/groebf.spad.pamphlet
index f4b7c397..9d7c70a3 100644
--- a/src/algebra/groebf.spad.pamphlet
+++ b/src/algebra/groebf.spad.pamphlet
@@ -212,8 +212,10 @@ GroebnerFactorizationPackage(Dom, Expon, VarSet, Dpol): T == C where
stopDividing := false
until stopDividing repeat
nPq := nP exquo q
- stopDividing := (nPq case "failed")
- if not stopDividing then nP := autoCoerce nPq
+ if nPq case Dpol then
+ nP := nPq@Dpol
+ else
+ stopDividing := true
stopDividing := stopDividing or zero? degree nP
zero? degree nP =>
diff --git a/src/algebra/rep2.spad.pamphlet b/src/algebra/rep2.spad.pamphlet
index acd317dc..ed4e7b0b 100644
--- a/src/algebra/rep2.spad.pamphlet
+++ b/src/algebra/rep2.spad.pamphlet
@@ -398,8 +398,7 @@ RepresentationPackage2(R): public == private where
transitionMatrix : M R := _
transpose completeEchelonBasis submodule
messagePrint " Transition matrix computed"
- inverseTransitionMatrix : M R := _
- autoCoerce(inverse transitionMatrix)$Union(M R,"failed")
+ inverseTransitionMatrix := inverse(transitionMatrix)::M(R)
messagePrint " The inverse of the transition matrix computed"
messagePrint " Now transform the matrices"
for i in 1..maxIndex algebraGenerators repeat
@@ -453,8 +452,7 @@ RepresentationPackage2(R): public == private where
for i in 1..maxIndex result repeat
for j in 1..maxIndex (result.i) repeat
mat : M R := result.i.j
- result.i.j := _
- transpose autoCoerce(inverse mat)$Union(M R,"failed")
+ result.i.j := transpose(inverse(mat)::M(R))
else
messagePrint " Representation is not irreducible, use meatAxe to split"
-- if "split?" then dual representation interchange factor
@@ -543,8 +541,7 @@ RepresentationPackage2(R): public == private where
result := false
-- can assume that dimensions of cyclic submodules are equal
(ncols baseChange0) = n => -- full dimension
- transitionM := baseChange0 * _
- autoCoerce(inverse baseChange1)$Union(M R,"failed")
+ transitionM := baseChange0 * (inverse(baseChange1)::M(R))
foundResult := true
result := true
for j in 1..numberOfGenerators while result repeat
@@ -639,8 +636,7 @@ RepresentationPackage2(R): public == private where
transitionMatrix : M R := _
transpose completeEchelonBasis submodule
messagePrint " Transition matrix computed"
- inverseTransitionMatrix : M R :=
- autoCoerce(inverse transitionMatrix)$Union(M R,"failed")
+ inverseTransitionMatrix := inverse(transitionMatrix)::M(R)
messagePrint " The inverse of the transition matrix computed"
messagePrint " Now transform the matrices"
for i in 1..maxIndex algebraGenerators repeat