Documentation

PremiseSelection.Cloud

def Lean.PremiseSelection.Cloud.makeRequest {α : Type} [FromJson α] (method urlPath : String) (data? : Option Json) :
Equations
  • One or more equations did not get rendered due to their size.
Instances For

    Retrieving indexed premises and modules stored on the server, and collecting new premises either imported or defined locally.

    The reason we make the distinction between imported and local premises is only because we can cache the results (set of premises and their signatures if unindexed) for imported premises in IO.Ref, because they won't change unless imports are changed.

    Indexed premises are represented by a Nat (index in getIndexedPremisesFromServer). Unindexed premises are represented as a Premise (name and signature).

    The maximum number of new premises to send to the server.

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

      A cache holding indexed premises by the server.

      Unfiltered list of all premises known by the server, as a mapping from name to index. The result is cached in an IO.Ref, because (assuming the server is static) the result will not change.

      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

          All modules known by the server. NOTE This is not used.

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

            A cache holding the premises imported from other modules that are indexed by the server.

            A cache holding the premises imported from other modules that are not indexed by the server.

            Get imported premises, separated by whether they are indexed by the server, and a number indicating the true number of unindexed imported premises.

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

              Get the imported premises that are indexed by the server. The result is cached in an IO.Ref, because (assuming the server is static) the result will not change unless the file is restarted.

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

                Get the imported premises not indexed by the server. The result is cached in an IO.Ref, because (assuming the server is static) the result will not change unless the file is restarted.

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

                  Get the number of imported premises not indexed by the server. The result is cached in an IO.Ref, because (assuming the server is static) the result will not change unless the file is restarted. This number is used only for printing a warning message.

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

                    Get the local premises defined in the current file that are indexed by the server. Modifications to these premises will not be reflected in the retrieval results, with the assumption being even if modifications are made, they should be small enough to significantly change the semantic meaning (the name is kept after all).

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

                      Returns the local premises defined in the current file that are not indexed by the server. The set of premises is not cached, to allow for adding/deleting local premises (unless indexed by the server). Currently, the printed signature itself is cached by the Premise.fromName function, meaning that it does not support modifying local premises, but (TODO) this behavior might (or should) change in the future by disabling this cache.

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

                        Returns new unindexed premises defined in the environment, from both imported and local premises, truncated to the maximum number of unindexed premises allowed by the server.

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

                          Returns indexed premises defined in the environment, from both imported and local premises.

                          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
                                  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
                                      def Lean.PremiseSelection.Cloud.selectPremisesCore (state : String) (indexedPremises : Array Nat) (unindexedPremises : Array Premise) (k : Nat) :
                                      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