Exercise linearalgebra.systemwithmatrix
Description
Solve Linear System with Matrix
Strategy
<label name="generalsolutiontoalinearsystemmatrixapproach"> <sequence> <let> <decl var="0"> <orelse> <sequence> <label name="dropequations"> <choice> <label name="inconsistentsystem01"> <rule name="linearalgebra.linsystem.inconsistent"/> </label> <label name="drop00equation"> <rule name="linearalgebra.linsystem.trivial"/> </label> </choice> </label> <var var="0"/> </sequence> <succeed/> </orelse> </decl> <var var="0"/> </let> <rule name="linearalgebra.linsystem.tomatrix"/> <label name="gaussianelimination"> <sequence> <label name="forwardpass"> <sequence> <rule name="simplify"/> <let> <decl var="1"> <orelse> <sequence> <label name="findj-thcolumn"> <rule name="linearalgebra.gaussianelim.findcolumnj"/> </label> <label name="exchangerows"> <orelse> <rule name="linearalgebra.gaussianelim.exchange"/> <succeed/> </orelse> </label> <label name="scalerow"> <orelse> <rule name="linearalgebra.gaussianelim.scale"/> <succeed/> </orelse> </label> <label name="zerosinj-thcolumn"> <let> <decl var="0"> <orelse> <sequence> <rule name="linearalgebra.gaussianelim.add"/> <var var="0"/> </sequence> <succeed/> </orelse> </decl> <var var="0"/> </let> </label> <label name="coveruptoprow"> <rule name="linearalgebra.gaussianelim.coverrow"/> </label> <var var="1"/> </sequence> <succeed/> </orelse> </decl> <var var="1"/> </let> </sequence> </label> <label name="backwardpass"> <sequence> <rule name="simplify"/> <let> <decl var="1"> <orelse> <sequence> <label name="uncoverrow"> <rule name="linearalgebra.gaussianelim.uncoverrow"/> </label> <label name="sweep"> <let> <decl var="0"> <orelse> <sequence> <rule name="linearalgebra.gaussianelim.add"/> <var var="0"/> </sequence> <succeed/> </orelse> </decl> <var var="0"/> </let> </label> <var var="1"/> </sequence> <succeed/> </orelse> </decl> <var var="1"/> </let> </sequence> </label> </sequence> </label> <rule name="linearalgebra.linsystem.frommatrix"/> <let> <decl var="0"> <orelse> <sequence> <label name="dropequations"> <choice> <label name="inconsistentsystem01"> <rule name="linearalgebra.linsystem.inconsistent"/> </label> <label name="drop00equation"> <rule name="linearalgebra.linsystem.trivial"/> </label> </choice> </label> <var var="0"/> </sequence> <succeed/> </orelse> </decl> <var var="0"/> </let> </sequence> </label>
Locations
Location | Label |
[] | generalsolutiontoalinearsystemmatrixapproach |
[0] | ...dropequations |
[0,0] | ......inconsistentsystem01 |
[0,0,0] | .........linearalgebra.linsystem.inconsistent |
[1,0] | ......drop00equation |
[0,1,0] | .........linearalgebra.linsystem.trivial |
[1] | ...linearalgebra.linsystem.tomatrix |
[2] | ...gaussianelimination |
[0,2] | ......forwardpass |
[0,0,2] | .........findj-thcolumn |
[1,0,2] | .........exchangerows |
[0,1,0,2] | ............linearalgebra.gaussianelim.exchange |
[2,0,2] | .........scalerow |
[0,2,0,2] | ............linearalgebra.gaussianelim.scale |
[3,0,2] | .........zerosinj-thcolumn |
[0,3,0,2] | ............linearalgebra.gaussianelim.add |
[4,0,2] | .........coveruptoprow |
[1,2] | ......backwardpass |
[0,1,2] | .........uncoverrow |
[1,1,2] | .........sweep |
[0,1,1,2] | ............linearalgebra.gaussianelim.add |
[3] | ...linearalgebra.linsystem.frommatrix |
[4] | ...dropequations |
[0,4] | ......inconsistentsystem01 |
[0,0,4] | .........linearalgebra.linsystem.inconsistent |
[1,4] | ......drop00equation |
[0,1,4] | .........linearalgebra.linsystem.trivial |