I am fooling around a bit with dismantle and ToInert. In the light of the passage "For the exact internal representation, see dismantle," in the help page on ToInert, I am surprised to see that dismantle does not provide any information concerning the entries of a given matrix, as do ToInert:
expr := Matrix(2,2,(i,j) -> m||i||j):
dismantle(expr);
ToInert(expr);
RTABLE(11): 4 [1..2, 1..2]
   NAME(6): anything #[protected]
_Inert_MATRIX(_Inert_RANGE(_Inert_INTPOS(1), _Inert_INTPOS(2)), _Inert_RANGE(_Inert_INTPOS(1), _Inert_INTPOS(2)), _Inert_SET(_Inert_EXPSEQ(_Inert_EQUATION(_Inert_EXPSEQ(_Inert_INTPOS(1), _Inert_INTPOS(1)), _Inert_NAME("m11")), _Inert_EQUATION(_Inert_EXPSEQ(_Inert_INTPOS(1), _Inert_INTPOS(2)), _Inert_NAME("m12")), _Inert_EQUATION(_Inert_EXPSEQ(_Inert_INTPOS(2), _Inert_INTPOS(1)), _Inert_NAME("m21")), _Inert_EQUATION(_Inert_EXPSEQ(_Inert_INTPOS(2), _Inert_INTPOS(2)), _Inert_NAME("m22")))), _Inert_EQUATION(_Inert_NAME("datatype"), _Inert_NAME("anything", _Inert_ATTRIBUTE(_Inert_NAME("protected", _Inert_ATTRIBUTE(_Inert_NAME("protected")))))), _Inert_EQUATION(_Inert_NAME("storage"), _Inert_NAME("rectangular")), _Inert_EQUATION(_Inert_ASSIGNEDNAME("order", "PROC", _Inert_ATTRIBUTE(_Inert_NAME("protected", _Inert_ATTRIBUTE(_Inert_NAME("protected"))))), _Inert_NAME("Fortran_order"))) What is the reason for that?

Please Wait...