Documentation

Architect.Output

Conversion from Lean nodes to LaTeX.

@[reducible, inline]
Equations
Instances For

    We convert nodes to LaTeX.

    The output provides the following macros:

    The structure of the output of a module A with nodes b and c is:

    A.tex
    A/b.tex
    A/c.tex
    

    The first is a header file that defines the macro \inputleannode{name}, which simply inputs A/name.tex. The rest are artifact files that contain the LaTeX of each node.

    Equations
    Instances For
      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

            Infer the used constants of a node as (statement uses, proof uses).

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              def Architect.NodePart.toLatex {m : TypeType} [Monad m] (part : NodePart) (allParts : Array NodePart := #[part]) (inferredUses : InferredUses) (title : Option String := none) (additionalContent defaultText : String := "") :

              Merges and converts an array of NodePart to LaTeX. It is assumed that part ∈ allParts.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                def Architect.isMathlibOk {m : TypeType} [Monad m] [Lean.MonadEnv m] (name : Lean.Name) :
                Equations
                Instances For

                  Whether a node is sorry-free (both statement and proof have no sorryAx).

                  Equations
                  Instances For

                    Progress statistics for blueprint nodes.

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

                      Progress report with aggregate stats and optional per-module breakdown.

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

                            Compute progress statistics for an array of blueprint nodes. Categories are mutually exclusive: a node is either formalized (sorry-free), incomplete (contains sorry), or not ready. These three sum to total.

                            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

                                LatexArtifact represents an auxiliary output file for a single node, containing its label (which is its filename) and content.

                                Instances For

                                  LatexOutput represents the extracted LaTeX from a module, consisting of a header file and auxiliary files.

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

                                        Convert imported module to LaTeX (header file, artifact files).

                                        Equations
                                        Instances For

                                          Convert current module to LaTeX (header file, artifact files).

                                          Equations
                                          Instances For

                                            Shows the blueprint LaTeX of the current module (#show_blueprint) or a blueprint node (#show_blueprint lean_name or #show_blueprint "latex_label").

                                            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

                                                  Shows the blueprint JSON of the current module (#show_blueprint_json) or a single Lean declaration (#show_blueprint_json name).

                                                  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

                                                      Shows blueprint progress statistics.

                                                      • #blueprint_progress shows project-wide statistics with per-module breakdown.
                                                      • #blueprint_progress nobreakdown shows project-wide statistics without breakdown.
                                                      • #blueprint_progress local shows current module statistics with per-module breakdown.
                                                      • #blueprint_progress local nobreakdown shows current module statistics without breakdown.
                                                      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

                                                              Classification of a single blueprint node's formalization status.

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

                                                                A blueprint node entry with status and dependency completion data. Used uniformly for blocking deps, reverse deps, unblocked nodes, and incomplete nodes.

                                                                Instances For

                                                                  Column widths for aligned dep-fraction formatting.

                                                                  Instances For

                                                                    Compute dep-fraction column widths from an array of NodeEntry.

                                                                    Equations
                                                                    • One or more equations did not get rendered due to their size.
                                                                    Instances For
                                                                      def Architect.fmtDepFrac (done total : Nat) (w : DepFracWidths) :

                                                                      Format a dependency fraction with aligned / and % columns.

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

                                                                        Format a list of NodeEntry as aligned MessageData rows: name frac status (for interactive).

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

                                                                          Classify a single blueprint node as formalized, incomplete, or not ready.

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

                                                                            Status report for a specific blueprint node and its dependency subtree.

                                                                            Instances For
                                                                              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.

                                                                                Compute the formalization status of a specific blueprint node and its dependency subtree.

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

                                                                                  Shows formalization status of a specific blueprint node and its dependency subtree.

                                                                                  • #blueprint_status name shows the status of name and its transitive dependencies.
                                                                                  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

                                                                                      Report listing all incomplete blueprint nodes.

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

                                                                                        Collect all incomplete blueprint nodes with their dependency completion fraction.

                                                                                        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

                                                                                            Shows incomplete blueprint nodes sorted by dependency completion.

                                                                                            • #blueprint_incomplete shows incomplete nodes across all modules.
                                                                                            • #blueprint_incomplete local shows incomplete nodes in the current module only.
                                                                                            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

                                                                                                  Impact report: reverse dependencies and nodes that would be unblocked.

                                                                                                  Instances For
                                                                                                    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.

                                                                                                      Compute the impact of formalizing a specific blueprint node: which nodes depend on it and which would become actionable.

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

                                                                                                        Shows the impact of formalizing a specific blueprint node: which nodes depend on it and which would become actionable.

                                                                                                        • #blueprint_impact name searches all imported modules.
                                                                                                        • #blueprint_impact name local searches only the current module.
                                                                                                        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

                                                                                                                    Write latex to the appropriate blueprint tex file. Returns the list of paths to auxiliary output files (note: the returned paths are currently discarded).

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

                                                                                                                      Write json to the appropriate blueprint json file.

                                                                                                                      Equations
                                                                                                                      • One or more equations did not get rendered due to their size.
                                                                                                                      Instances For
                                                                                                                        def Architect.outputLibraryLatex (basePath : System.FilePath) (library : Lean.Name) (modules : Array Lean.Name) :

                                                                                                                        Write to an appropriate index tex file that \inputs all modules in a library.

                                                                                                                        Equations
                                                                                                                        • One or more equations did not get rendered due to their size.
                                                                                                                        Instances For
                                                                                                                          def Architect.outputLibraryJson (basePath : System.FilePath) (library : Lean.Name) (modules : Array Lean.Name) :

                                                                                                                          Write to an appropriate index json file containing paths to json files of all modules in a library.

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