Documentation

Cvc.Srt

Sorts #

The constructors of Srt, the conversions between a Srt and its Lean description Typ, and the classes IsArith and HasConcat the operators restrict their sorts with.

Function sorts are curried: α → β → γ is the sort (-> α β γ), while a function in domain position stays a higher-order argument.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      Get the Boolean sort.

      Equations
      Instances For

        Get the Integer sort.

        Equations
        Instances For

          Get the Real sort.

          Equations
          Instances For

            Get the string sort.

            Equations
            Instances For

              Get the regular expression sort.

              Equations
              Instances For

                Get the rounding mode sort.

                Equations
                Instances For

                  Create a bit-vector sort.

                  • size The bit-width of the bit-vector sort.
                  Equations
                  Instances For
                    def Cvc.Srt.float [Ω] (exp sig : UInt32) :

                    Create a floating-point sort.

                    • exp The bit-width of the exponent of the floating-point sort.
                    • sig The bit-width of the significand of the floating-point sort.
                    Equations
                    Instances For
                      def Cvc.Srt.finiteField [Ω] (size : Nat) :

                      The sort of the finite field with size elements, size being prime.

                      Equations
                      Instances For
                        def Cvc.Srt.ofName [Ω] (name : String) :

                        The sort declared under name in this scope, failing if there is none.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For

                          Whether a sort has been declared under a name in this scope.

                          Equations
                          Instances For

                            Fails if a sort named symbol has already been declared in this scope.

                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              def Cvc.Srt.arrayTo [Ω] (idx elm : Srt) :

                              Creates the sort of arrays from idx to elm, e.g. idx.arrayTo elm.

                              Equations
                              Instances For
                                def Cvc.Srt.arrayFrom [Ω] (elm idx : Srt) :

                                Creates the sort of arrays to elm from idx, e.g. elm.arrayFrom idx.

                                Equations
                                Instances For
                                  def Cvc.Srt.array [Ω] (elm : Srt) :

                                  An array of elm-values indexed by int-values.

                                  Equations
                                  Instances For
                                    def Cvc.Srt.bag [Ω] (elm : Srt) :

                                    The sort of bags of elm.

                                    Equations
                                    Instances For
                                      def Cvc.Srt.set [Ω] (elm : Srt) :

                                      The sort of sets of elm.

                                      Equations
                                      Instances For
                                        def Cvc.Srt.seq [Ω] (elm : Srt) :

                                        The sort of sequences of elm.

                                        Equations
                                        Instances For
                                          def Cvc.Srt.tuple [Ω] (sorts : Array Srt) :

                                          The sort of tuples of the given components.

                                          Equations
                                          Instances For
                                            def Cvc.Srt.function [Ω] (dom : Array Srt) (cod : Srt) (domNonempty : 0 < dom.size := by (try grind) <;> fail "failed to prove the domain is nonempty") :

                                            The sort of functions from the domain sorts dom to cod.

                                            Equations
                                            Instances For

                                              The abstract sort of a family, its parameters left unspecified.

                                              Equations
                                              Instances For

                                                cvc5's fully abstract sort, ?.

                                                cvc5 accepts it only as a set, bag or sequence element, an array's index or element, or a function's codomain.

                                                Equations
                                                Instances For
                                                  Equations
                                                  Instances For

                                                    Further constructors #

                                                    def Cvc.Srt.predicate [Ω] (doms : Srts) :

                                                    The sort of predicates over doms: functions from them to Bool.

                                                    Equations
                                                    Instances For
                                                      def Cvc.Srt.nullable [Ω] (elm : Srt) :

                                                      The sort of nullable elm values, denoted Lean-side by Option.

                                                      Equations
                                                      Instances For
                                                        def Cvc.Srt.record [Ω] (fields : Array (String × Srt)) :

                                                        A record sort, of named fields in order.

                                                        Fails on an empty record and on a repeated field name. The order is part of the sort: {a : Int, b : Bool} and {b : Bool, a : Int} are different.

                                                        Equations
                                                        • One or more equations did not get rendered due to their size.
                                                        Instances For
                                                          def Cvc.Srt.param [Ω] (symbol : String) :

                                                          Create a sort parameter.

                                                          • symbol The name of the sort.

                                                          Warning: This function is experimental and may change in future versions.

                                                          Equations
                                                          Instances For

                                                            A new uninterpreted sort named symbol, which Typ.uninterpreted symbol then names.

                                                            The name must not be taken by another sort declared in this scope.

                                                            Equations
                                                            Instances For
                                                              def Cvc.Srt.finiteFieldOfString [Ω] (size : String) (base : UInt32 := 10) :

                                                              A finite field sort whose size is given in the base base.

                                                              Equations
                                                              Instances For
                                                                def Cvc.Srt.uninterpretedConstructor [Ω] (arity : Nat) (symbol : String) :

                                                                An uninterpreted sort constructor, which arity parameters instantiate into a sort.

                                                                The name must not be taken by another sort declared in this scope.

                                                                Equations
                                                                • One or more equations did not get rendered due to their size.
                                                                Instances For
                                                                  def Cvc.Srt.unresolvedDatatype [Ω] (symbol : String) (arity : Nat := 0) :

                                                                  A placeholder for a datatype sort not yet resolved.

                                                                  For mutually recursive parametric datatypes, whose declarations mention each other.

                                                                  Equations
                                                                  Instances For

                                                                    Datatype sorts #

                                                                    A datatype sort comes from a Datatype.Decl. Each call makes a fresh sort, even from an identical declaration, so a datatype is declared once per scope and then named with Typ.datatype.

                                                                    The sort of the datatype decl declares, which Typ.datatype then names.

                                                                    The datatype's name must not be taken by another sort declared in this scope.

                                                                    Equations
                                                                    • One or more equations did not get rendered due to their size.
                                                                    Instances For

                                                                      The sorts of a mutually recursive group of datatypes, declared together.

                                                                      Members refer to each other through Datatype.Ctor.Decl.addSelectorUnresolved. As for Srt.datatype, each name must be new to this scope.

                                                                      Equations
                                                                      • One or more equations did not get rendered due to their size.
                                                                      Instances For

                                                                        Testers #

                                                                        Which family a sort belongs to. Each is the guard on the accessors of that family below: asking a non-array for its index sort fails, and these are how to know not to.

                                                                        Equations
                                                                        • One or more equations did not get rendered due to their size.
                                                                        Instances For

                                                                          Determine if this is the Boolean sort (SMT-LIB: Bool).

                                                                          Equations
                                                                          Instances For

                                                                            Determine if this is the Integer sort (SMT-LIB: Int).

                                                                            Equations
                                                                            Instances For

                                                                              Determine if this is the Real sort (SMT-LIB: Real).

                                                                              Equations
                                                                              Instances For

                                                                                Determine if this is the String sort (SMT-LIB: String).

                                                                                Equations
                                                                                Instances For

                                                                                  Determine if this is the regular expression sort (SMT-LIB: RegLan).

                                                                                  Equations
                                                                                  Instances For

                                                                                    Determine if this is the rounding mode sort (SMT-LIB: RoundingMode).

                                                                                    Equations
                                                                                    Instances For

                                                                                      Determine if this is a bit-vector sort (SMT-LIB: (_ BitVec i)).

                                                                                      Equations
                                                                                      Instances For

                                                                                        Determine if this is a floating-point sort (SMT-LIB: (_ FloatingPoint eb sb)).

                                                                                        Equations
                                                                                        Instances For

                                                                                          Determine if this is a finite field sort.

                                                                                          Equations
                                                                                          Instances For

                                                                                            Determine if this is an array sort.

                                                                                            Equations
                                                                                            Instances For

                                                                                              Determine if this is a Set sort.

                                                                                              Equations
                                                                                              Instances For

                                                                                                Determine if this is a Bag sort.

                                                                                                Equations
                                                                                                Instances For

                                                                                                  Determine if this is a Sequence sort.

                                                                                                  Equations
                                                                                                  Instances For

                                                                                                    Determine if this is a tuple sort.

                                                                                                    Equations
                                                                                                    Instances For

                                                                                                      Determine if this is a nullable sort.

                                                                                                      Equations
                                                                                                      Instances For

                                                                                                        Determine if this is a record sort.

                                                                                                        Warning: this function is experimental and may change in future versions.

                                                                                                        Equations
                                                                                                        Instances For

                                                                                                          Determine if this is a function sort.

                                                                                                          Equations
                                                                                                          Instances For

                                                                                                            Determine if this is a predicate sort.

                                                                                                            A predicate sort is a function sort that maps to the Boolean sort. All predicate sorts are also function sorts.

                                                                                                            Equations
                                                                                                            Instances For

                                                                                                              Determine if this is an abstract sort.

                                                                                                              Equations
                                                                                                              Instances For

                                                                                                                Determine if this is a datatype sort.

                                                                                                                Equations
                                                                                                                Instances For

                                                                                                                  Determine if this is a datatype constructor sort.

                                                                                                                  Equations
                                                                                                                  Instances For

                                                                                                                    Determine if this is a datatype selector sort.

                                                                                                                    Equations
                                                                                                                    Instances For

                                                                                                                      Determine if this is a datatype tester sort.

                                                                                                                      Equations
                                                                                                                      Instances For

                                                                                                                        Determine if this is a datatype updater sort.

                                                                                                                        Equations
                                                                                                                        Instances For

                                                                                                                          Determine if this is an uninterpreted sort.

                                                                                                                          Equations
                                                                                                                          Instances For

                                                                                                                            Determine if this is an uninterpreted sort constructor.

                                                                                                                            An uninterpreted sort constructor has arity > 0 and can be instantiated to construct uninterpreted sorts with given sort parameters.

                                                                                                                            Equations
                                                                                                                            Instances For

                                                                                                                              Whether this sort instantiates a parametric datatype or an uninterpreted sort constructor.

                                                                                                                              cvc5 also answers true for a datatype sort without parameters: a non-empty getInstantiatedParameters is the reliable test. See Srt.instantiate.

                                                                                                                              Equations
                                                                                                                              Instances For

                                                                                                                                Accessors #

                                                                                                                                Each answers only for the family its tester identifies, so each comes in two forms: the plain one fails elsewhere, the ?-suffixed one answers none.

                                                                                                                                Equations
                                                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                                                Instances For

                                                                                                                                  Any sort #

                                                                                                                                  Get the kind of this sort.

                                                                                                                                  Equations
                                                                                                                                  Instances For

                                                                                                                                    Get the kind of this sort.

                                                                                                                                    Equations
                                                                                                                                    Instances For

                                                                                                                                      Whether this sort has a symbol, a name; see getSymbol.

                                                                                                                                      Equations
                                                                                                                                      Instances For

                                                                                                                                        Whether this sort has a symbol, a name; see getSymbol.

                                                                                                                                        Equations
                                                                                                                                        Instances For

                                                                                                                                          The symbol of this sort, its name.

                                                                                                                                          It is the name given to Srt.uninterpreted, Srt.uninterpretedConstructor or Srt.unresolvedDatatype.

                                                                                                                                          Equations
                                                                                                                                          Instances For

                                                                                                                                            The symbol of this sort, its name.

                                                                                                                                            It is the name given to Srt.uninterpreted, Srt.uninterpretedConstructor or Srt.unresolvedDatatype.

                                                                                                                                            Equations
                                                                                                                                            Instances For

                                                                                                                                              Sized and parameterized sorts #

                                                                                                                                              The bit-width of the bit-vector sort.

                                                                                                                                              Equations
                                                                                                                                              Instances For

                                                                                                                                                The bit-width of the bit-vector sort.

                                                                                                                                                Equations
                                                                                                                                                Instances For

                                                                                                                                                  The size of the finite field sort.

                                                                                                                                                  Equations
                                                                                                                                                  Instances For

                                                                                                                                                    The size of the finite field sort.

                                                                                                                                                    Equations
                                                                                                                                                    Instances For

                                                                                                                                                      The bit-width of the exponent of the floating-point sort.

                                                                                                                                                      Equations
                                                                                                                                                      Instances For

                                                                                                                                                        The bit-width of the exponent of the floating-point sort.

                                                                                                                                                        Equations
                                                                                                                                                        Instances For

                                                                                                                                                          The width of the significand of the floating-point sort.

                                                                                                                                                          Equations
                                                                                                                                                          Instances For

                                                                                                                                                            The width of the significand of the floating-point sort.

                                                                                                                                                            Equations
                                                                                                                                                            Instances For

                                                                                                                                                              Containers #

                                                                                                                                                              The index sort of an array sort.

                                                                                                                                                              Equations
                                                                                                                                                              Instances For

                                                                                                                                                                The index sort of an array sort.

                                                                                                                                                                Equations
                                                                                                                                                                Instances For

                                                                                                                                                                  The element sort of an array sort.

                                                                                                                                                                  Equations
                                                                                                                                                                  Instances For

                                                                                                                                                                    The element sort of a set sort.

                                                                                                                                                                    Equations
                                                                                                                                                                    Instances For

                                                                                                                                                                      The element sort of a set sort.

                                                                                                                                                                      Equations
                                                                                                                                                                      Instances For

                                                                                                                                                                        The element sort of a bag sort.

                                                                                                                                                                        Equations
                                                                                                                                                                        Instances For

                                                                                                                                                                          The element sort of a bag sort.

                                                                                                                                                                          Equations
                                                                                                                                                                          Instances For

                                                                                                                                                                            The element sort of a sequence sort.

                                                                                                                                                                            Equations
                                                                                                                                                                            Instances For

                                                                                                                                                                              The element sort of a sequence sort.

                                                                                                                                                                              Equations
                                                                                                                                                                              Instances For

                                                                                                                                                                                The element sort of a nullable sort.

                                                                                                                                                                                Equations
                                                                                                                                                                                Instances For

                                                                                                                                                                                  The length of a tuple sort.

                                                                                                                                                                                  Equations
                                                                                                                                                                                  Instances For

                                                                                                                                                                                    The length of a tuple sort.

                                                                                                                                                                                    Equations
                                                                                                                                                                                    Instances For

                                                                                                                                                                                      The element sorts of a tuple sort.

                                                                                                                                                                                      Equations
                                                                                                                                                                                      Instances For

                                                                                                                                                                                        The element sorts of a tuple sort.

                                                                                                                                                                                        Equations
                                                                                                                                                                                        Instances For

                                                                                                                                                                                          Functions #

                                                                                                                                                                                          The arity of a function sort.

                                                                                                                                                                                          Equations
                                                                                                                                                                                          Instances For

                                                                                                                                                                                            The arity of a function sort.

                                                                                                                                                                                            Equations
                                                                                                                                                                                            Instances For

                                                                                                                                                                                              The domain sorts of a function sort.

                                                                                                                                                                                              Equations
                                                                                                                                                                                              Instances For

                                                                                                                                                                                                The codomain sort of a function sort.

                                                                                                                                                                                                Equations
                                                                                                                                                                                                Instances For

                                                                                                                                                                                                  Abstract and uninterpreted sorts #

                                                                                                                                                                                                  The sort kind of an abstract sort, which denotes the kind of sorts that this abstract sort denotes.

                                                                                                                                                                                                  Equations
                                                                                                                                                                                                  Instances For

                                                                                                                                                                                                    The sort kind of an abstract sort, which denotes the kind of sorts that this abstract sort denotes.

                                                                                                                                                                                                    Equations
                                                                                                                                                                                                    Instances For

                                                                                                                                                                                                      Get the associated uninterpreted sort constructor of an instantiated uninterpreted sort.

                                                                                                                                                                                                      Equations
                                                                                                                                                                                                      Instances For

                                                                                                                                                                                                        Get the associated uninterpreted sort constructor of an instantiated uninterpreted sort.

                                                                                                                                                                                                        Equations
                                                                                                                                                                                                        Instances For

                                                                                                                                                                                                          The arity of an uninterpreted sort constructor sort.

                                                                                                                                                                                                          Equations
                                                                                                                                                                                                          Instances For

                                                                                                                                                                                                            The sorts a parametric datatype or an uninterpreted sort constructor was instantiated with.

                                                                                                                                                                                                            See Srt.instantiate.

                                                                                                                                                                                                            Equations
                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                              The sorts a parametric datatype or an uninterpreted sort constructor was instantiated with.

                                                                                                                                                                                                              See Srt.instantiate.

                                                                                                                                                                                                              Equations
                                                                                                                                                                                                              Instances For

                                                                                                                                                                                                                Datatypes #

                                                                                                                                                                                                                The datatype sorts: what a constructor, selector or tester sort relates. The Datatype they answer has its own API, in Cvc.Untyped.Theory.Datatype.

                                                                                                                                                                                                                Get the underlying datatype of a datatype sort.

                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                Instances For

                                                                                                                                                                                                                  Get the underlying datatype of a datatype sort.

                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                  Instances For

                                                                                                                                                                                                                    Get the arity of a datatype sort.

                                                                                                                                                                                                                    Number of type parameters if the datatype is parametric, 0 otherwise.

                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                    Instances For

                                                                                                                                                                                                                      Get the arity of a datatype sort.

                                                                                                                                                                                                                      Number of type parameters if the datatype is parametric, 0 otherwise.

                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                      Instances For

                                                                                                                                                                                                                        The arity of a datatype constructor sort.

                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                        Instances For

                                                                                                                                                                                                                          The domain sorts of a datatype constructor sort.

                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                          Instances For

                                                                                                                                                                                                                            The domain sort of a datatype selector sort.

                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                                              The codomain sort of a datatype selector sort.

                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                              Instances For

                                                                                                                                                                                                                                The domain sort of a datatype tester sort.

                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                Instances For

                                                                                                                                                                                                                                  The codomain sort of a datatype tester sort.

                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                  Instances For

                                                                                                                                                                                                                                    Instantiation and substitution #

                                                                                                                                                                                                                                    def Cvc.Srt.instantiate [Ω] (srt : Srt) (params : Srts) :

                                                                                                                                                                                                                                    Instantiates a parametric sort with the given parameters.

                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                    Instances For
                                                                                                                                                                                                                                      def Cvc.Srt.instantiate? [Ω] (srt : Srt) (params : Srts) :

                                                                                                                                                                                                                                      Instantiates a parametric sort with the given parameters.

                                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                                      Instances For
                                                                                                                                                                                                                                        def Cvc.Srt.substitute [Ω] (srt : Srt) (srts replacements : Srts) :

                                                                                                                                                                                                                                        Replaces srts by replacements throughout a sort, simultaneously.

                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                        Instances For
                                                                                                                                                                                                                                          def Cvc.Srt.substitute? [Ω] (srt : Srt) (srts replacements : Srts) :

                                                                                                                                                                                                                                          Replaces srts by replacements throughout a sort, simultaneously.

                                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                                          Instances For

                                                                                                                                                                                                                                            Sort refinements #

                                                                                                                                                                                                                                            theorem Cvc.Typ.typs_of_isArith {typ : Typ} :
                                                                                                                                                                                                                                            typ.isArith = true → typ = int ∨ typ = real
                                                                                                                                                                                                                                            theorem Cvc.Typ.typs_of_hasConcat {typ : Typ} :
                                                                                                                                                                                                                                            typ.hasConcat = true → typ = string ∨ ∃ (t : Typ?), typ = seq t

                                                                                                                                                                                                                                            Conversions between Typ and Srt #

                                                                                                                                                                                                                                            The sort a Typ describes.

                                                                                                                                                                                                                                            Fails only on a datatype or uninterpreted name no sort was declared under in this scope.

                                                                                                                                                                                                                                            Equations
                                                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                                                              The sort a Typ describes.

                                                                                                                                                                                                                                              Fails only on a datatype or uninterpreted name no sort was declared under in this scope.

                                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                              Instances For

                                                                                                                                                                                                                                                The sort a Typ describes.

                                                                                                                                                                                                                                                Fails only on a datatype or uninterpreted name no sort was declared under in this scope.

                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                                                  partial def Cvc.Srt.toTyp [Ω] (srt : Srt) :

                                                                                                                                                                                                                                                  Conversion to Typ, the inverse of Typ.toSrt wherever a Typ can describe the sort.

                                                                                                                                                                                                                                                  A function sort comes back curried, (-> α β γ) as function α (function β γ). A declared sort — a datatype or an uninterpreted sort — converts only if it is the sort this scope registered under its name.

                                                                                                                                                                                                                                                  Sorts that no Typ describes fail rather than approximate: the abstract sorts, which toTyp? accepts, instantiated parametric datatypes, uninterpreted sort constructors and their instantiations, and the datatype-operator sorts.

                                                                                                                                                                                                                                                  partial def Cvc.Srt.toTyp? [Ω] (srt : Srt) :

                                                                                                                                                                                                                                                  Conversion to Typ?, which unlike toTyp accepts the abstract sorts.

                                                                                                                                                                                                                                                  @[reducible, inline]
                                                                                                                                                                                                                                                  abbrev Cvc.Typ.of (α : Type) [A : ToTyp α] :

                                                                                                                                                                                                                                                  The Typ associated to some type.

                                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                                  Instances For
                                                                                                                                                                                                                                                    @[reducible, inline]
                                                                                                                                                                                                                                                    abbrev Cvc.ToTyp.srt [Ω] {α : Type} [ToTyp α] :

                                                                                                                                                                                                                                                    The sort a type denotes, through its ToTyp instance.

                                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                                    Instances For
                                                                                                                                                                                                                                                      @[reducible, inline]
                                                                                                                                                                                                                                                      abbrev Cvc.Srt.of [Ω] (α : Type) [A : ToTyp α] :

                                                                                                                                                                                                                                                      The sort a type denotes, through its ToTyp instance.

                                                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                                                      Instances For
                                                                                                                                                                                                                                                        @[instance_reducible, instance 100]

                                                                                                                                                                                                                                                        The usual order on rationals, which core lacks; at low priority, so that Mathlib's wins.

                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                        @[instance_reducible]
                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                        @[instance_reducible]
                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                        @[instance_reducible]
                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                        @[instance_reducible]
                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                        @[instance_reducible]
                                                                                                                                                                                                                                                        instance Cvc.ToTyp.instBitVec {size : Nat} :
                                                                                                                                                                                                                                                        ToTyp (BitVec size)
                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                        @[instance_reducible]
                                                                                                                                                                                                                                                        instance Cvc.ToTyp.instArray {α : Type} [A : ToTyp α] :

                                                                                                                                                                                                                                                        Lean's Array denotes cvc5's sequences; SMT-LIB arrays are TotalMap.

                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                        @[instance_reducible]
                                                                                                                                                                                                                                                        instance Cvc.ToTyp.instOption {α : Type} [A : ToTyp α] :

                                                                                                                                                                                                                                                        Lean's Option denotes cvc5's Nullable.

                                                                                                                                                                                                                                                        Equations
                                                                                                                                                                                                                                                        class Cvc.IsArith (α : Type) [A : ToTyp α] :

                                                                                                                                                                                                                                                        α denotes an arithmetic sort: Int or Rat.

                                                                                                                                                                                                                                                        Instances
                                                                                                                                                                                                                                                          class Cvc.HasConcat (α : Type) [A : ToTyp α] :

                                                                                                                                                                                                                                                          α denotes a sort with concatenation: String or Array _.

                                                                                                                                                                                                                                                          Instances

                                                                                                                                                                                                                                                            Regular expressions #

                                                                                                                                                                                                                                                            structure Cvc.Regex :

                                                                                                                                                                                                                                                            The Lean type indexing regular-expression terms; it carries no data.

                                                                                                                                                                                                                                                              Instances For
                                                                                                                                                                                                                                                                @[instance_reducible]
                                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                                Equations
                                                                                                                                                                                                                                                                Instances For
                                                                                                                                                                                                                                                                  @[instance_reducible]
                                                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                                                  @[instance_reducible]
                                                                                                                                                                                                                                                                  Equations

                                                                                                                                                                                                                                                                  Functions #

                                                                                                                                                                                                                                                                  @[instance_reducible]
                                                                                                                                                                                                                                                                  instance Cvc.ToTyp.instForall {α β : Type} [A : ToTyp α] [B : ToTyp β] :
                                                                                                                                                                                                                                                                  ToTyp (α → β)
                                                                                                                                                                                                                                                                  Equations

                                                                                                                                                                                                                                                                  A sort written either way #

                                                                                                                                                                                                                                                                  Where the sort-erased DSL lets a sort be written — a quantifier's binders, a grammar's non-terminals and parameters, a record field's stated sort — it accepts a Lean type or a Srt alike, through srtOf%.

                                                                                                                                                                                                                                                                  srtOf% e is Srt.of e when e is a Lean type, and pure e when it is a Srt.

                                                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                                                  Instances For

                                                                                                                                                                                                                                                                    Elaborates srtOf% e by looking at what e turned out to be.

                                                                                                                                                                                                                                                                    Equations
                                                                                                                                                                                                                                                                    • One or more equations did not get rendered due to their size.
                                                                                                                                                                                                                                                                    Instances For