fact: Fixpoint insert_pls n m (x: expr n m): expr n m -> expr n m := match x with | e_zer _ _ => fun y => y | e_top _ _ => fun y => top | e_pls x z => fun y => match cmp y z with | Lt => insert_pls x y+z | Gt => x+z+y | Eq => x+z end | x => fun y => match cmp x y with | Lt => x+y | Gt => y+x | Eq => y end end%ast.
imports: kleene syntax powerfix