--test linear solver --linearsolver.commands -- Last Edited by: Beach, May 5, 1984 5:17:36 pm PDT run LinearSolverImpl _LinearSolverImpl _Init[] _StartDebug[] _debug _ FALSE _debug _ TRUE -- problem on page 50 _Init[] _&x_NewUnknown["x"] _&y_NewUnknown["y"] _&m_NewUnknown["m"] _Restrict[&m] _&n_NewUnknown["n"] _Restrict[&n] _Restrict[&y] _&l_NewUnknown["l"] _AssertZero[LIST[C[[1, &y]], C[[-1, &m]], C[[1, &n]], C[[-2, &x]]]] _Debug["after AssertZero"] _AssertZero[LIST[C[[1, &l]], C[[1, &m]], C[[3, &n]], C[[1, unity]]]] _Debug["after AssertZero"] _Init[] _&m_NewUnknown["m"] _&x_NewUnknown["x"] _&y_NewUnknown["y"] _&l_NewUnknown["l"] _AssertZero[LIST[C[[1, &x]], C[[-2, &l]], C[[-1, &y]], C[[-1, unity]]]] _Debug["after AssertZero"] _AssertZero[LIST[C[[1, &m]], C[[-2, &l]], C[[-1, &y]], C[[-3, unity]]]] _Debug["after AssertZero"] -- Create a rectangle with diagonal (1,2) to (4,3) -- x >= 1, x <=4, y >= 2, y <= 3 -- x+y >= 3, x+y <= 7 _Init[] _&x_NewUnknown["x"] _&y_NewUnknown["y"] _&a_NewUnknown["a"] _Restrict[&a] _AssertZero[LIST[C[[1, &x]], C[[-1, unity]], C[[-1, &a]]]] _&b_NewUnknown["b"] _Restrict[&b] _AssertZero[LIST[C[[-1, &x]], C[[4, unity]], C[[-1, &b]]]] _&c_NewUnknown["c"] _Restrict[&c] _AssertZero[LIST[C[[1, &y]], C[[-2, unity]], C[[-1, &c]]]] _&d_NewUnknown["d"] _Restrict[&d] _AssertZero[LIST[C[[-1, &y]], C[[3, unity]], C[[-1, &d]]]] _&e_NewUnknown["e"] _Restrict[&e] _AssertZero[LIST[C[[1, &x]], C[[1, &y]], C[[-1, &e]], C[[3, unity]]]] _&f_NewUnknown["f"] _Restrict[&f] _AssertZero[LIST[C[[-1, &x]], C[[-1, &y]], C[[-1, &f]], C[[7, unity]]]] _Debug["after AssertZero"] _Maximize[&x] _Solution[&x] _Maximize[&y] _Solution[&y] _Maximize[&b] -- problem on page 52 -- y <= x+1, x+y >= -3, x <= -4 _Init[] _&x_NewUnknown["x"] _&y_NewUnknown["y"] _&a_NewUnknown["a"] _Restrict[&a] _AssertZero[LIST[C[[-1, &a]], C[[1, &x]], C[[-1, &y]], C[[1, unity]]]] _Debug["after AssertZero"] _&b_NewUnknown["b"] _Restrict[&b] _AssertZero[LIST[C[[-1, &b]], C[[1, &x]], C[[1, &y]], C[[3, unity]]]] _Debug["after AssertZero"] _&c_NewUnknown["c"] _AssertZero[LIST[C[[-1, &c]], C[[1, &x]], C[[-4, unity]]]] _Debug["after AssertZero"] run -a LinearSolverImpl run -a TableConstraintsImpl interp &v _ ViewerOps.FindViewer["TableTool"] &t _ TableToolImpl.TableFromViewer[&v.child] %LinearSolverImpl.debug _ FALSE TableConstraintsImpl.SolveConstraints[&t] %LinearSolverImpl.StartDebug[] %LinearSolverImpl.debug _ TRUE %LinearSolverImpl.Debug["Hmmm"] ÊC˜JšwÏc-Ðbc1žœHÏkœ Ÿœœ¢ŸœŸœ Ÿœ Ÿœ Ÿœ4ŸœŸœ Ÿœ Ÿœ ŸœŸœŸœ Ÿœ Ÿœ Ÿœ7ŸœŸœ Ÿœ Ÿœ Ÿœ,oœ^ŸœŸœ ŸœŸœ;ŸœŸœ ŸœŸœ;ŸœŸœ ŸœŸœ;ŸœŸœ ŸœŸœ;ŸœdŸœš9œ^ŸœŸœ Ÿœ Ÿœ ŸœXŸœŸœ Ÿœ Ÿœ ŸœJŸœŸœ Ÿœ Ÿœ+˜ëJ˜J˜Jšœ˜Jšœ˜J˜J˜&J˜,J˜J˜)J˜J˜J˜J˜—…— ¨ ñ