fact: Fixpoint cnv' n m (x: expr n m): expr m n := match x with | e_zer _ _ => 0 | e_top _ _ => top | e_one _ => 1 | e_pls x y => cnv' x + cnv' y | e_cap x y => cnv' x ∩ cnv' y | e_neg x => ! cnv' x | e_dot x y => dot' (cnv' y) (cnv' x) | e_ldv x y => e_rdv (cnv' x) (cnv' y) | e_rdv x y => e_ldv (cnv' x) (cnv' y) | e_itr x => (cnv' x)^+ | e_str x => (cnv' x)^* | e_cnv x => x | e_var a => (e_var a)° end%ast.
imports: kleene syntax powerfix