fact: Fixpoint build e i f (A : pre_MAUT) : pre_MAUT := match e with | RegExp.zero => A | RegExp.one => add_one i f A | RegExp.var c => add_var i f c A | RegExp.plus a b => build a i f (build b i f A) | RegExp.dot a b => let p := size A in build a i p (build b p f (incr A)) | RegExp.star a => let p := size A in add_one i p (build a p p (add_one p f (incr A))) end.
imports: ATBR(Common) ATBR(Classes) ATBR(Graph) ATBR(Monoid) ATBR(SemiLattice) ATBR(SemiRing) ATBR(KleeneAlgebra) ATBR(MxGraph) ATBR(MxSemiLattice) ATBR(MxSemiRing) ATBR(MxKleeneAlgebra) ATBR(DKA_Definitions) ATBR(DKA_CheckLabels) ATBR(StrictStarForm) ATBR(Utils_WF) Coq(Relations)