Documentation

MIPRE.Background.Tailored.AnswerReduction.ArLpProof

The proof check, as a program #

Slice P4h of planning/aldous-lyons-track.md: the constraints of the proof check of the answer-reduced game (Typed.proofCons) at the oracle's point question, computed by a program from the parameters, the point, the oracle's readable answer and the seed's circuit.

The proof check's linear equations, its constraints when the guard holds, follow.

The circuit polynomial at a point #

The circuit polynomial at a point, on (t, nIn, s, the point's coordinates, the gates): the evaluator of the circuit on the coordinates of its nIn inputs and s gates.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    theorem MIPRE.Tailored.AnsRed.Typed.getD_eq_getElem {α : Type u_1} (l : List α) (d : α) {i : ℕ} (h : i < l.length) :
    l.getD i d = l[i]
    theorem MIPRE.Tailored.AnsRed.Typed.circValF_eq {t : ℕ} {ht : 1 ≤ t} {m : ℕ} (C : SAT.Circuit) (hC : C.WellFormed) (hm : C.inputs + C.size = m) (q : Fin m → Fq t ht) (pts : List Cost.BitStr) (hpts : ∀ (i : Fin m), pts.getD ↑i [] = (SAT.shoupBinField t ht).toBits (q i)) :

    The evaluator computes the circuit polynomial at a point whose coordinates are given.

    The input of the proof check #

    @[reducible, inline]

    The input of the proof check: the parameters, the offset o of the oracle's answer, N, the coordinates of the point, the oracle's readable answer and the gates of the seed's circuit.

    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

          nIn, the number of the circuits' inputs.

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

            R, the oracle's readable count 6 + m + 2ℓ + ◇' + 3r.

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

              Atoms #

              @[reducible, inline]

              The window width ℓ, through ρ.

              Equations
              Instances For
                @[reducible, inline]

                The witness index width r, through ρ.

                Equations
                Instances For

                  The oracle's readable value at a position.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    theorem MIPRE.Tailored.AnsRed.Typed.qAt_eq {t : ℕ} {ht : 1 ≤ t} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {L : PcpDims} {q : Fin L.m → Fq t ht} (hpts : ∀ (X : Fin L.m), (rPts.toFun (ρ.toFun x)).getD ↑X [] = (SAT.shoupBinField t ht).toBits (q X)) {w : Cost.PolyTimeFun J Cost.Unary} (X : Fin L.m) (hw : w.toFun x = Cost.unary ↑X) :
                    (qAt ρ w).toFun x = (SAT.shoupBinField t ht).toBits (q X)
                    theorem MIPRE.Tailored.AnsRed.Typed.wAt_eq {t : ℕ} {ht : 1 ≤ t} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {j d : ℕ} {L : PcpDims} {e : Cost.Data} (hP : rP.toFun (ρ.toFun x) = arParams t j d L e) {w : Cost.PolyTimeFun J Cost.Unary} {k : ℕ} (hw : w.toFun x = Cost.unary k) :
                    (wAt ρ w).toFun x = (SAT.shoupBinField t ht).toBits (elt t ht (rA.toFun (ρ.toFun x)) (k * t))
                    theorem MIPRE.Tailored.AnsRed.Typed.vals_eq {t : ℕ} {ht : 1 ≤ t} {j d : ℕ} {L : PcpDims} (aR : Cost.BitStr) (s : Slot L) :
                    vals t ht j d L aR s = elt t ht aR (idxO s * t)

                    A readable value of the oracle's point answer is its window at the slot's position.

                    Wires and positions #

                    @[reducible, inline]

                    A constant in unary.

                    Equations
                    Instances For

                      The wire of index i of the k-th witness index.

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

                        The k-th sign wire.

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

                          The position of β_B i.

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

                            The position of β_O i.

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

                              The position of β_W k i.

                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For
                                theorem MIPRE.Tailored.AnsRed.Typed.wB0_eq {t : ℕ} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {j d : ℕ} {L : PcpDims} {e : Cost.Data} (hP : rP.toFun (ρ.toFun x) = arParams t j d L e) :
                                (wB0 ρ).toFun x = Cost.unary ↑L.πB
                                theorem MIPRE.Tailored.AnsRed.Typed.wC0_eq {t : ℕ} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {j d : ℕ} {L : PcpDims} {e : Cost.Data} (hP : rP.toFun (ρ.toFun x) = arParams t j d L e) :
                                (wC0 ρ).toFun x = Cost.unary ↑L.πC
                                theorem MIPRE.Tailored.AnsRed.Typed.wVO_eq {t : ℕ} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {j d : ℕ} {L : PcpDims} {e : Cost.Data} (hP : rP.toFun (ρ.toFun x) = arParams t j d L e) {i : Cost.PolyTimeFun J Cost.Unary} (a : Fin L.oW) (hi : i.toFun x = Cost.unary ↑a) :
                                (wVO ρ i).toFun x = Cost.unary ↑(L.vO a)
                                theorem MIPRE.Tailored.AnsRed.Typed.wVA_eq {J : Type} [Cost.SizedEncoding J] {x : J} {L : PcpDims} {i : Cost.PolyTimeFun J Cost.Unary} (a : Fin L.ℓ) (hi : i.toFun x = Cost.unary ↑a) :
                                (wVA i).toFun x = Cost.unary ↑(L.vA a)
                                theorem MIPRE.Tailored.AnsRed.Typed.wVB_eq {t : ℕ} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {j d : ℕ} {L : PcpDims} {e : Cost.Data} (hP : rP.toFun (ρ.toFun x) = arParams t j d L e) {i : Cost.PolyTimeFun J Cost.Unary} (a : Fin L.ℓ) (hi : i.toFun x = Cost.unary ↑a) :
                                (wVB ρ i).toFun x = Cost.unary ↑(L.vB a)
                                theorem MIPRE.Tailored.AnsRed.Typed.wVW_eq {t : ℕ} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {j d : ℕ} {L : PcpDims} {e : Cost.Data} (hP : rP.toFun (ρ.toFun x) = arParams t j d L e) (k : Fin 3) {i : Cost.PolyTimeFun J Cost.Unary} (a : Fin L.r) (hi : i.toFun x = Cost.unary ↑a) :
                                (wVW ρ (↑k) i).toFun x = Cost.unary ↑(L.vW k a)
                                theorem MIPRE.Tailored.AnsRed.Typed.wSgn_eq {t : ℕ} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {j d : ℕ} {L : PcpDims} {e : Cost.Data} (hP : rP.toFun (ρ.toFun x) = arParams t j d L e) (k : Fin 6) :
                                (wSgn ρ ↑k).toFun x = Cost.unary ↑(L.sgn k)
                                theorem MIPRE.Tailored.AnsRed.Typed.pβA_eq {t : ℕ} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {j d : ℕ} {L : PcpDims} {e : Cost.Data} (hP : rP.toFun (ρ.toFun x) = arParams t j d L e) {i : Cost.PolyTimeFun J Cost.Unary} (a : Fin L.ℓ) (hi : i.toFun x = Cost.unary ↑a) :
                                theorem MIPRE.Tailored.AnsRed.Typed.pβB_eq {t : ℕ} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {j d : ℕ} {L : PcpDims} {e : Cost.Data} (hP : rP.toFun (ρ.toFun x) = arParams t j d L e) {i : Cost.PolyTimeFun J Cost.Unary} (a : Fin L.ℓ) (hi : i.toFun x = Cost.unary ↑a) :
                                theorem MIPRE.Tailored.AnsRed.Typed.pβO_eq {t : ℕ} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {j d : ℕ} {L : PcpDims} {e : Cost.Data} (hP : rP.toFun (ρ.toFun x) = arParams t j d L e) {i : Cost.PolyTimeFun J Cost.Unary} (a : Fin L.oW) (hi : i.toFun x = Cost.unary ↑a) :
                                theorem MIPRE.Tailored.AnsRed.Typed.pβW_eq {t : ℕ} {J : Type} [Cost.SizedEncoding J] {ρ : Cost.PolyTimeFun J PrfIn} {x : J} {j d : ℕ} {L : PcpDims} {e : Cost.Data} (hP : rP.toFun (ρ.toFun x) = arParams t j d L e) (k : Fin 3) {i : Cost.PolyTimeFun J Cost.Unary} (a : Fin L.r) (hi : i.toFun x = Cost.unary ↑a) :
                                (pβW ρ (↑k) i).toFun x = Cost.unary (idxO (Slot.βW k a))

                                The readable checks #

                                @[reducible, inline]

                                The identity of the proof check's input.

                                Equations
                                Instances For
                                  @[reducible, inline]

                                  The input, under an index.

                                  Equations
                                  Instances For

                                    An assignment check g (1 - g) = ∑_{i < k} term i.

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

                                      A term x_i (1 - x_i) β_i of an assignment check: the point's coordinate at a wire and the readable value at a position, both of the index.

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

                                        The assignment check of g_A.

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

                                          The assignment check of g_B.

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

                                            The assignment check of g_O.

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

                                              The assignment check of g_{W,k}.

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

                                                The circuit polynomial at the point.

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

                                                  A window literal p_π w - p_ε.

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

                                                    A witness literal w - p_ε.

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

                                                      The formula check.

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

                                                        The readable checks of the proof check, as a program.

                                                        Equations
                                                        • One or more equations did not get rendered due to their size.
                                                        Instances For
                                                          theorem MIPRE.Tailored.AnsRed.Typed.jT_ι₀ {t j d : ℕ} {L : PcpDims} {e : Cost.Data} {inp : PrfIn} (hP : rP.toFun inp = arParams t j d L e) :
                                                          theorem MIPRE.Tailored.AnsRed.Typed.asgF_eq {t : ℕ} {ht : 1 ≤ t} {inp : PrfIn} (hT : (jT ι₀).toFun inp = Cost.unary t) {g : Cost.PolyTimeFun PrfIn Cost.BitStr} {gv : Fq t ht} (hg : g.toFun inp = (SAT.shoupBinField t ht).toBits gv) {term : Cost.PolyTimeFun (Cost.Unary × PrfIn) Cost.BitStr} {k : Cost.PolyTimeFun PrfIn Cost.Unary} {K : ℕ} (hk : k.toFun inp = Cost.unary K) (x β : Fin K → Fq t ht) (hterm : ∀ (i : Fin K), term.toFun (Cost.unary ↑i, inp) = (SAT.shoupBinField t ht).toBits (x i * (1 - x i) * β i)) :
                                                          (asgF g term k).toFun inp = decide (gv * (1 - gv) = ∑ i : Fin K, x i * (1 - x i) * β i)
                                                          theorem MIPRE.Tailored.AnsRed.Typed.termF_eq {t : ℕ} {ht : 1 ≤ t} {j d : ℕ} {L : PcpDims} {e : Cost.Data} {inp : PrfIn} (hP : rP.toFun inp = arParams t j d L e) {q : Fin L.m → Fq t ht} (hpts : ∀ (X : Fin L.m), (rPts.toFun inp).getD ↑X [] = (SAT.shoupBinField t ht).toBits (q X)) {wire pos : Cost.PolyTimeFun (Cost.Unary × PrfIn) Cost.Unary} (i : ℕ) (X : Fin L.m) (k : ℕ) (hw : wire.toFun (Cost.unary i, inp) = Cost.unary ↑X) (hp : pos.toFun (Cost.unary i, inp) = Cost.unary k) :
                                                          (termF wire pos).toFun (Cost.unary i, inp) = (SAT.shoupBinField t ht).toBits (q X * (1 - q X) * elt t ht (rA.toFun inp) (k * t))
                                                          theorem MIPRE.Tailored.AnsRed.Typed.wAt_slot {t : ℕ} {ht : 1 ≤ t} {j d : ℕ} {L : PcpDims} {e : Cost.Data} {inp : PrfIn} (hP : rP.toFun inp = arParams t j d L e) {s : Slot L} {g : ℕ} (hg : idxO s = g) :
                                                          (wAt ι₀ (uc g)).toFun inp = (SAT.shoupBinField t ht).toBits (vals t ht j d L (rA.toFun inp) s)
                                                          theorem MIPRE.Tailored.AnsRed.Typed.asgAF_eq {t : ℕ} {ht : 1 ≤ t} {j d : ℕ} {L : PcpDims} {e : Cost.Data} {inp : PrfIn} (hP : rP.toFun inp = arParams t j d L e) {q : Fin L.m → Fq t ht} (hpts : ∀ (X : Fin L.m), (rPts.toFun inp).getD ↑X [] = (SAT.shoupBinField t ht).toBits (q X)) :
                                                          asgAF.toFun inp = decide (vals t ht j d L (rA.toFun inp) Slot.gA * (1 - vals t ht j d L (rA.toFun inp) Slot.gA) = ∑ i : Fin L.ℓ, (q ∘ L.vA) i * (1 - (q ∘ L.vA) i) * vals t ht j d L (rA.toFun inp) (Slot.βA i))
                                                          theorem MIPRE.Tailored.AnsRed.Typed.asgBF_eq {t : ℕ} {ht : 1 ≤ t} {j d : ℕ} {L : PcpDims} {e : Cost.Data} {inp : PrfIn} (hP : rP.toFun inp = arParams t j d L e) {q : Fin L.m → Fq t ht} (hpts : ∀ (X : Fin L.m), (rPts.toFun inp).getD ↑X [] = (SAT.shoupBinField t ht).toBits (q X)) :
                                                          asgBF.toFun inp = decide (vals t ht j d L (rA.toFun inp) Slot.gB * (1 - vals t ht j d L (rA.toFun inp) Slot.gB) = ∑ i : Fin L.ℓ, (q ∘ L.vB) i * (1 - (q ∘ L.vB) i) * vals t ht j d L (rA.toFun inp) (Slot.βB i))
                                                          theorem MIPRE.Tailored.AnsRed.Typed.asgOF_eq {t : ℕ} {ht : 1 ≤ t} {j d : ℕ} {L : PcpDims} {e : Cost.Data} {inp : PrfIn} (hP : rP.toFun inp = arParams t j d L e) {q : Fin L.m → Fq t ht} (hpts : ∀ (X : Fin L.m), (rPts.toFun inp).getD ↑X [] = (SAT.shoupBinField t ht).toBits (q X)) :
                                                          asgOF.toFun inp = decide (vals t ht j d L (rA.toFun inp) Slot.gO * (1 - vals t ht j d L (rA.toFun inp) Slot.gO) = ∑ i : Fin L.oW, (q ∘ L.vO) i * (1 - (q ∘ L.vO) i) * vals t ht j d L (rA.toFun inp) (Slot.βO i))
                                                          theorem MIPRE.Tailored.AnsRed.Typed.asgWF_eq {t : ℕ} {ht : 1 ≤ t} {j d : ℕ} {L : PcpDims} {e : Cost.Data} {inp : PrfIn} (hP : rP.toFun inp = arParams t j d L e) {q : Fin L.m → Fq t ht} (hpts : ∀ (X : Fin L.m), (rPts.toFun inp).getD ↑X [] = (SAT.shoupBinField t ht).toBits (q X)) (k : Fin 3) :
                                                          (asgWF ↑k).toFun inp = decide (vals t ht j d L (rA.toFun inp) (Slot.gW k) * (1 - vals t ht j d L (rA.toFun inp) (Slot.gW k)) = ∑ i : Fin L.r, (q ∘ L.vW k) i * (1 - (q ∘ L.vW k) i) * vals t ht j d L (rA.toFun inp) (Slot.βW k i))
                                                          theorem MIPRE.Tailored.AnsRed.Typed.formF_eq {t : ℕ} {ht : 1 ≤ t} {j d : ℕ} {L : PcpDims} {e : Cost.Data} {inp : PrfIn} (hP : rP.toFun inp = arParams t j d L e) {q : Fin L.m → Fq t ht} (hpts : ∀ (X : Fin L.m), (rPts.toFun inp).getD ↑X [] = (SAT.shoupBinField t ht).toBits (q X)) (C : SAT.Circuit) (hC : C.WellFormed) (hm : C.inputs + C.size = L.m) (hin : C.inputs = L.nIn) (hs : C.size = L.s) (hG : rG.toFun inp = C.gates) :
                                                          formF.toFun inp = decide ((MvPolynomial.eval q) ((MvPolynomial.rename (Fin.cast hm)) C.finiteArith) * (q L.πA * vals t ht j d L (rA.toFun inp) Slot.gA - q (L.sgn 0)) * (q L.πB * vals t ht j d L (rA.toFun inp) Slot.gB - q (L.sgn 1)) * (q L.πC * vals t ht j d L (rA.toFun inp) Slot.gO - q (L.sgn 2)) * ∏ k : Fin 3, (vals t ht j d L (rA.toFun inp) (Slot.gW k) - q (L.sgn (3 + Fin.castLE ⋯ k))) = ∑ X : Fin L.m, q X * (1 - q X) * vals t ht j d L (rA.toFun inp) (Slot.αR X))
                                                          theorem MIPRE.Tailored.AnsRed.Typed.guardF_eq {t : ℕ} {ht : 1 ≤ t} {j d : ℕ} {L : PcpDims} {e : Cost.Data} {inp : PrfIn} (hP : rP.toFun inp = arParams t j d L e) {q : Fin L.m → Fq t ht} (hpts : ∀ (X : Fin L.m), (rPts.toFun inp).getD ↑X [] = (SAT.shoupBinField t ht).toBits (q X)) (C : SAT.Circuit) (hC : C.WellFormed) (hm : C.inputs + C.size = L.m) (hin : C.inputs = L.nIn) (hs : C.size = L.s) (hG : rG.toFun inp = C.gates) :

                                                          The guard program decides the readable checks of the proof check.