let print_lexp (l: lexp) = match l with
LVar(id) -> "LVar("^ (print_ide id) ^")"
| LVec(id,ex) -> "LVec("^ (print_ide id) ^","^ (print_aexp ex) ^")"
| LMat(id,ex1,ex2) -> "LMat("^ (print_ide id) ^","^ (print_aexp ex1) ^","^ (print_aexp ex2) ^")"