fact: Fixpoint erase n m (x: X n m): regex := match x with | dot _ _ _ x y => RegExp.dot (erase x) (erase y) | plus _ _ x y => RegExp.plus (erase x) (erase y) | star _ x => RegExp.star (erase x) | zero _ _ => RegExp.zero | one _ => RegExp.one | var i => RegExp.var i end.
imports: ATBR(Common) ATBR(Classes) ATBR(Graph) ATBR(SemiLattice) ATBR(SemiRing) ATBR(KleeneAlgebra) ATBR(MxGraph) ATBR(Reification)