Documentation

MIPRE.Tailored.AnsRed.Slots

The polynomials of a PCP, slot by slot #

The answer-reduced game (defn:combi_ans_red, II:10285) asks the oracle for a PCP evaluated at a point or restricted to a line, and the isolated players for two of its polynomials: Alice for the two assignments g_A, g_{La} of the first answer, Bob for those of the second (Table tab:Answer_Lengths_combinatorial_ans_red). This file names the polynomials of a PCP (Pcp), so that the game can list them as codewords and compare them across players.

The slots of a PCP (Definition defn:PCP_of_V_n_satisfied): one for each polynomial, the readable ones first.

Instances For
    def MIPRE.Tailored.AnsRed.instDecidableEqSlot.decEq {L✝ : PcpDims} (x✝ x✝¹ : Slot L✝) :
    Decidable (x✝ = x✝¹)
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      The codewords of the roles #

      The readable slots, in the order of the oracle's codewords.

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

        The linear slots, in the order of the oracle's codewords.

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

          The codewords of a role, readable first.

          Equations
          Instances For

            Every slot is a codeword of the oracle.

            Positions among the oracle's codewords #

            The position of a slot among the oracle's codewords.

            Equations
            Instances For

              A readable slot sits among the oracle's readable codewords.

              A codeword of a role is readable exactly when it is among the role's readable ones.

              A PCP's slots #

              def MIPRE.Tailored.AnsRed.Pcp.slotEval {L : PcpDims} {F : Type u_1} [CommRing F] (P : Pcp L F) (p : Fin L.m → F) (s : Slot L) :
              F

              A PCP's value in a slot at a point of the PCP's variables.

              Equations
              Instances For
                noncomputable def MIPRE.Tailored.AnsRed.Pcp.slotPoly {L : PcpDims} {F : Type u_1} [CommRing F] (P : Pcp L F) (s : Slot L) :

                A PCP's polynomial in a slot, on all the PCP's variables.

                Equations
                Instances For
                  theorem MIPRE.Tailored.AnsRed.Pcp.eval_slotPoly {L : PcpDims} {F : Type u_1} [CommRing F] (P : Pcp L F) (p : Fin L.m → F) (s : Slot L) :
                  def MIPRE.Tailored.AnsRed.FormulaCheckV {L : PcpDims} {F : Type u_1} [CommRing F] (T : MvPolynomial (Fin L.m) F) (w : Slot L → F) (p : Fin L.m → F) :

                  The formula check on the values of the slots at a point.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    def MIPRE.Tailored.AnsRed.SystemCheckV {L : PcpDims} {F : Type u_1} [CommRing F] (w : Slot L → F) (x : Fin L.oW → F) :

                    The system check on the values of the slots at a point of the index space of O.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      def MIPRE.Tailored.AnsRed.AssignCheckV {F : Type u_1} [CommRing F] {k : ℕ} (g : F) (β x : Fin k → F) :

                      An assignment check on values: g (1 - g) is the certificate sum at x.

                      Equations
                      Instances For
                        def MIPRE.Tailored.AnsRed.PassesV {L : PcpDims} {F : Type u_1} [CommRing F] (T : MvPolynomial (Fin L.m) F) (w : Slot L → F) (p : Fin L.m → F) :

                        The thirteen checks on the values of the slots at a point, in the order of Pcp.Passes.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          theorem MIPRE.Tailored.AnsRed.passes_iff_passesV {L : PcpDims} {F : Type u_1} [CommRing F] (T : MvPolynomial (Fin L.m) F) (P : Pcp L F) (p : Fin L.m → F) :
                          Pcp.Passes T P p ↔ PassesV T (P.slotEval p) p

                          The checks of a PCP at a point are the checks on its values there.

                          def MIPRE.Tailored.AnsRed.PassesR {L : PcpDims} {F : Type u_1} [CommRing F] (T : MvPolynomial (Fin L.m) F) (w : Slot L → F) (p : Fin L.m → F) :

                          The checks on the readable values: the formula check and the readable assignment checks.

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            def MIPRE.Tailored.AnsRed.PassesL {L : PcpDims} {F : Type u_1} [CommRing F] (w : Slot L → F) (p : Fin L.m → F) :

                            The checks the linear values enter: the system check and the linear assignment checks.

                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              @[instance_reducible]
                              instance MIPRE.Tailored.AnsRed.instDecidablePassesROfDecidableEq {L : PcpDims} {F : Type u_1} [CommRing F] [DecidableEq F] (T : MvPolynomial (Fin L.m) F) (w : Slot L → F) (p : Fin L.m → F) :
                              Equations
                              theorem MIPRE.Tailored.AnsRed.passesV_iff {L : PcpDims} {F : Type u_1} [CommRing F] (T : MvPolynomial (Fin L.m) F) (w : Slot L → F) (p : Fin L.m → F) :
                              PassesV T w p ↔ PassesR T w p ∧ PassesL w p
                              theorem MIPRE.Tailored.AnsRed.passesR_congr {L : PcpDims} {F : Type u_1} [CommRing F] (T : MvPolynomial (Fin L.m) F) {w w' : Slot L → F} (p : Fin L.m → F) (h : ∀ (s : Slot L), s.readable = true → w s = w' s) :
                              PassesR T w p ↔ PassesR T w' p

                              The readable checks read only readable values.

                              The PCP of block-local polynomials #

                              noncomputable def MIPRE.Tailored.AnsRed.slotOf {L : PcpDims} {F : Type u_1} [CommRing F] {N : ℕ} (ι : Fin L.m → Fin N) (hι : Function.Injective ι) (s : Slot L) (g : MvPolynomial (Fin N) F) :

                              The polynomial on a slot's variables that a polynomial on N variables is, when it depends only on the slot's block (placed among the N variables by ι).

                              Equations
                              Instances For
                                noncomputable def MIPRE.Tailored.AnsRed.Pcp.ofPolys {L : PcpDims} {F : Type u_1} [CommRing F] {N : ℕ} (ι : Fin L.m → Fin N) (hι : Function.Injective ι) (f : Slot L → MvPolynomial (Fin N) F) :
                                Pcp L F

                                The PCP of a family of polynomials on N variables, one per slot, each read on its slot's block.

                                Equations
                                • One or more equations did not get rendered due to their size.
                                Instances For
                                  theorem MIPRE.Tailored.AnsRed.Pcp.slot_ofPolys {L : PcpDims} {F : Type u_1} [CommRing F] {N : ℕ} (ι : Fin L.m → Fin N) (hι : Function.Injective ι) (f : Slot L → MvPolynomial (Fin N) F) (s : Slot L) :
                                  (ofPolys ι hι f).slot s = slotOf ι hι s (f s)
                                  theorem MIPRE.Tailored.AnsRed.rename_slotOf {L : PcpDims} {F : Type u_1} [CommRing F] {N : ℕ} (ι : Fin L.m → Fin N) (hι : Function.Injective ι) {s : Slot L} {g : MvPolynomial (Fin N) F} (hg : ↑g.vars ⊆ Set.range (ι ∘ s.emb)) :
                                  (MvPolynomial.rename (ι ∘ s.emb)) (slotOf ι hι s g) = g

                                  A polynomial that depends only on a slot's block is the renaming of its reading there.

                                  theorem MIPRE.Tailored.AnsRed.rename_ofPolys_slot {L : PcpDims} {F : Type u_1} [CommRing F] {N : ℕ} (ι : Fin L.m → Fin N) (hι : Function.Injective ι) {f : Slot L → MvPolynomial (Fin N) F} (hf : ∀ (s : Slot L), ↑(f s).vars ⊆ Set.range (ι ∘ s.emb)) (s : Slot L) :
                                  (MvPolynomial.rename (ι ∘ s.emb)) ((Pcp.ofPolys ι hι f).slot s) = f s

                                  The slots of the PCP of block-local polynomials, renamed back, are the polynomials.

                                  theorem MIPRE.Tailored.AnsRed.slotEval_ofPolys {L : PcpDims} {F : Type u_1} [CommRing F] {N : ℕ} (ι : Fin L.m → Fin N) (hι : Function.Injective ι) {f : Slot L → MvPolynomial (Fin N) F} (hf : ∀ (s : Slot L), ↑(f s).vars ⊆ Set.range (ι ∘ s.emb)) (u : Fin N → F) (s : Slot L) :
                                  (Pcp.ofPolys ι hι f).slotEval (u ∘ ι) s = (MvPolynomial.eval u) (f s)

                                  The values of the PCP of block-local polynomials are theirs.

                                  theorem MIPRE.Tailored.AnsRed.indDeg_ofPolys {L : PcpDims} {F : Type u_1} [CommRing F] {N : ℕ} (ι : Fin L.m → Fin N) (hι : Function.Injective ι) {f : Slot L → MvPolynomial (Fin N) F} (hf : ∀ (s : Slot L), ↑(f s).vars ⊆ Set.range (ι ∘ s.emb)) {d : ℕ} (hd : ∀ (s : Slot L) (i : Fin N), MvPolynomial.degreeOf i (f s) ≤ d) :
                                  (Pcp.ofPolys ι hι f).IndDeg d

                                  The PCP of block-local polynomials of individual degree at most d has degree at most d.