fact: Fixpoint exprSD (e : Expr) : Type := match e with | Top => True | Bottom => False | Equiv d c f g => (f : d ~> c) ≈ g | And p q => exprSD p ∧ exprSD q | Or p q => exprSD p + exprSD q | Impl p q => exprSD p → exprSD q end.
imports: Coq.Lists.List Equations(Equations) Category.Lib Category.Theory.Category Category.Solver.Expr Category.Solver.Denote Category.Solver.Reify