Documentation

FLT_Proofs.Learner.Active

Active Learning, Teachers, and Meta-Learning #

Active learners query oracles. Teachers present data strategically. Meta-learners learn to learn. Also includes synthesizers and verifiers for the CEGIS paradigm.

Active Learner (Query Learning) #

structure ActiveLearner (X : Type u) (Y : Type v) :
Type (max u v)

An active learner can query oracles (membership, equivalence).

Instances For
    def IsPassive {X : Type u} {Y : Type v} (_L : BatchLearner X Y) :

    A passive learner receives data without querying.

    Equations
    Instances For
      structure LearnerWithAdvice (X : Type u) (Y : Type v) (A : Type u_1) :
      Type (max (max u u_1) v)

      A learner augmented with advice.

      • base : BatchLearner X Y

        Base learner

      • learnWithAdvice : A{m : } → (Fin mX × Y)Concept X Y

        Advice-augmented learning: advice → sample → hypothesis

      Instances For

        Teachers #

        structure Teacher (X : Type u) (Y : Type v) :
        Type (max u v)

        A teacher presents examples to a learner according to some strategy.

        • target : Concept X Y

          The concept the teacher is teaching

        • teach : List (X × Y)X × Y

          Teaching strategy: choose next example given what's been shown

        Instances For
          def Teacher.teachingSequence {X : Type u} {Y : Type v} (T : Teacher X Y) :
          List (X × Y)

          Generate the teaching sequence: the teacher's strategy iterated.

          Equations
          Instances For
            def IsOptimalTeacher {X : Type u} {Y : Type v} (T : Teacher X Y) (C : ConceptClass X Y) :

            An optimal teacher minimizes the number of examples needed to uniquely identify the target within concept class C. Formally: the teaching sequence distinguishes T.target from all other c ∈ C in at most k steps, and no teacher for the same target does it in fewer.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              def IsAdversarial {X : Type u} {Y : Type v} (T : Teacher X Y) (C : ConceptClass X Y) :

              An adversarial teacher chooses examples that maximize learner error. For every learner state (represented by what the learner has seen so far), the teacher picks the example that is hardest for ANY learner to use.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                def IsRandomTeacher {X : Type u} {Y : Type v} (T : Teacher X Y) :

                A random teacher draws examples uniformly: the teaching strategy does not depend on what data has been shown so far.

                Equations
                Instances For
                  structure MinimallyAdequateTeacher (X : Type u) (Y : Type v) :
                  Type (max u v)

                  Minimally adequate teacher: provides membership queries and equivalence queries. Interface for Angluin's L* algorithm.

                  Instances For

                    Meta-Learner #

                    structure MetaLearner (X : Type u) (Y : Type v) :
                    Type (max u v)

                    A meta-learner: a learner that takes a concept class and produces a learner specialized for that class (learning-to-learn).

                    Instances For
                      structure LLMCritic (X : Type u) (Y : Type v) extends Teacher X Y :
                      Type (max u v)

                      LLM critic: a teacher that uses a language model as its strategy.

                      Instances For
                        def Synthesizer (X : Type u) (Y : Type v) :
                        Type (max (max (max v u) v) u)

                        A synthesizer: produces candidate concepts from specifications.

                        Equations
                        Instances For
                          def Verifier (X : Type u) (Y : Type v) (spec candidate : Concept X Y) :

                          A verifier: checks whether a candidate concept satisfies a specification.

                          Equations
                          Instances For