Documentation

Init.Data.Int.OfNat

Helper definitions and theorems for converting Nat expressions into Int one. We use them to implement the arithmetic theories in grind

@[reducible, inline]
Equations
    Instances For
      @[reducible, inline]
      Equations
        Instances For
          def Int.OfNat.Var.denote (ctx : Context) (v : Var) :
          Equations
            Instances For
              inductive Int.OfNat.Expr :
              Instances For
                Equations
                  Instances For
                    Equations
                      Instances For
                        theorem Int.OfNat.Expr.denoteAsInt_eq (ctx : Context) (e : Expr) :
                        denoteAsInt ctx e = (denote ctx e)
                        theorem Int.OfNat.Expr.eq_denoteAsInt (ctx : Context) (e : Expr) :
                        (denote ctx e) = denoteAsInt ctx e
                        theorem Int.OfNat.Expr.eq (ctx : Context) (lhs rhs : Expr) :
                        (denote ctx lhs = denote ctx rhs) = (denoteAsInt ctx lhs = denoteAsInt ctx rhs)
                        theorem Int.OfNat.Expr.le (ctx : Context) (lhs rhs : Expr) :
                        (denote ctx lhs denote ctx rhs) = (denoteAsInt ctx lhs denoteAsInt ctx rhs)
                        theorem Int.OfNat.of_le (ctx : Context) (lhs rhs : Expr) :
                        Expr.denote ctx lhs Expr.denote ctx rhsExpr.denoteAsInt ctx lhs Expr.denoteAsInt ctx rhs
                        theorem Int.OfNat.of_not_le (ctx : Context) (lhs rhs : Expr) :
                        theorem Int.OfNat.of_dvd (ctx : Context) (d : Nat) (e : Expr) :
                        theorem Int.OfNat.of_eq (ctx : Context) (lhs rhs : Expr) :
                        Expr.denote ctx lhs = Expr.denote ctx rhsExpr.denoteAsInt ctx lhs = Expr.denoteAsInt ctx rhs
                        theorem Int.OfNat.of_not_eq (ctx : Context) (lhs rhs : Expr) :
                        ¬Expr.denote ctx lhs = Expr.denote ctx rhs¬Expr.denoteAsInt ctx lhs = Expr.denoteAsInt ctx rhs