Documentation

Strata.Languages.Core.DDMTransform.Translate

Instances For
    @[implicit_reducible]
    Equations
    • One or more equations did not get rendered due to their size.
    Equations
    Instances For
      def Strata.TransM.error {α : Type} [Inhabited α] (msg : String) :
      Equations
      Instances For
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          Equations
          Instances For
            Equations
            Instances For
              def Strata.translateIdent (Identifier : Type) [Coe String Identifier] [Inhabited Identifier] (arg : StrataDDM.Arg) :
              TransM Identifier
              Equations
              Instances For
                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  Equations
                  Instances For
                    Equations
                    Instances For
                      inductive Strata.GenKind :
                      Instances For
                        @[implicit_reducible]
                        Equations
                        structure Strata.GenNum :

                        Counters for assigning default names for various definitions.

                        • var_def : Nat
                        • axiom_def : Nat
                        • assume_def : Nat
                        • assert_def : Nat
                        • cover_def : Nat
                        Instances For
                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            @[implicit_reducible]
                            Equations
                            Instances For
                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For
                                def Strata.nextLabel (namePrefix : String) (kind : GenKind) (labelArg : StrataDDM.Arg) (bindings : TransBindings) :

                                Generate a default label and increment the counter for the given kind.

                                Equations
                                • One or more equations did not get rendered due to their size.
                                Instances For
                                  @[implicit_reducible]
                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  @[implicit_reducible]
                                  Equations
                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  Instances For
                                    Equations
                                    Instances For
                                      Equations
                                      Instances For
                                        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
                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For
                                              Equations
                                              Instances For
                                                Equations
                                                Instances For
                                                  Equations
                                                  • One or more equations did not get rendered due to their size.
                                                  Instances For

                                                    Shared binding setup for lambdas and quantifiers: translates the declaration list, creates scoped bound variables, and translates the body in the extended scope.

                                                    Resolve a function from a recFuncBlock by its global-context index.

                                                    Equations
                                                    • One or more equations did not get rendered due to their size.
                                                    Instances For
                                                      Equations
                                                      Instances For
                                                        Equations
                                                        Instances For
                                                          Equations
                                                          Instances For
                                                            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
                                                                Equations
                                                                Instances For

                                                                  Decompose an LHS into a base identifier and a (reversed) list of index expressions. For m[k1][k2], returns (m, [k2, k1]).

                                                                  Equations
                                                                  Instances For

                                                                    Translate an assert/cover statement with optional reachability check.

                                                                    Equations
                                                                    • One or more equations did not get rendered due to their size.
                                                                    Instances For
                                                                      Instances For
                                                                        @[implicit_reducible]
                                                                        Equations
                                                                        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

                                                                            Like translateBindings but also returns the index of the @[cases] parameter, if any.

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

                                                                              Translate bindings and partition into inputs/outputs based on out/inout modifiers. Returns (inputs, outputs) where inout params appear in both lists.

                                                                              Equations
                                                                              • One or more equations did not get rendered due to their size.
                                                                              Instances For
                                                                                Equations
                                                                                Instances For
                                                                                  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
                                                                                      Equations
                                                                                      Instances For
                                                                                        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

                                                                                            Translate a top-level block command as a nameless parameterless procedure

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

                                                                                                Translate a single CFG block

                                                                                                Equations
                                                                                                Instances For

                                                                                                  Translate a CFG body

                                                                                                  Equations
                                                                                                  Instances For

                                                                                                    Translate a procedure with CFG body

                                                                                                    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
                                                                                                        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
                                                                                                            Instances For
                                                                                                              Equations
                                                                                                              Instances For
                                                                                                                Equations
                                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                                Instances For

                                                                                                                  Translate a single function within a mutual recursive block. fnOp is a recfn_decl operation. preBindings has placeholder fvars for all functions in the block. siblingExprs contains the opExpr for each preceding sibling (for bvar resolution).

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

                                                                                                                    Translate a command_recfndefs block (one or more mutually recursive functions).

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

                                                                                                                      Information about a single constructor extracted during translation. This is the Strata Core-specific version of ConstructorInfo from AST.lean, with types translated from TypeExpr to LMonoTy.

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

                                                                                                                          Extract and translate constructor information from a constructor list argument.

                                                                                                                          Parameters:

                                                                                                                          • p: The DDM Program (provides dialect map for annotation lookup)
                                                                                                                          • bindings: Current translation bindings (for type variable resolution)
                                                                                                                          • arg: The constructor list argument from the parsed datatype command
                                                                                                                          Equations
                                                                                                                          • One or more equations did not get rendered due to their size.
                                                                                                                          Instances For

                                                                                                                            Extract type arguments from a datatype's optional bindings argument.

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

                                                                                                                              Create a placeholder LDatatype for recursive type references.

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

                                                                                                                                Filter factory function declarations to extract constructor, tester, and field accessor decls for a single datatype.

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

                                                                                                                                  Build LConstr list from TransConstructorInfo array.

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

                                                                                                                                    Generate factory function declarations from a list of LDatatypes.

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

                                                                                                                                      Translate a datatype block (one or more datatype declarations). The @[preRegisterTypes] metadata on command_datatypes ensures that type names are pre-registered in the DDM GlobalContext before processing.

                                                                                                                                      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
                                                                                                                                          Equations
                                                                                                                                          • One or more equations did not get rendered due to their size.
                                                                                                                                          Instances For