private static Map<Object, Object> exprToMap(Expr expr) {
Map<Object, Object> map = new HashMap<Object, Object>();
int length = expr.dimensions()[0];
for (int i = 1; i <= length; i++) {
Expr rule = expr.part(i);
Expr lhs = rule.part(1);
Expr rhs = rule.part(2);
map.put(fromExpr(lhs), fromExpr(rhs));
}
return map;
}