Langlib

Langlib.Automata.LinearBounded.CertifiedRowSystem.Complement.ProtocolStepCorrectness

Correctness interface for integrated complement-protocol steps #

The complete protocol verifier is a tagged sum of small synchronous scanners. This module hides that dispatch: a row transition whose certificate repeats one action is reduced to the corresponding scanner, then to its declarative list-level specification.

def CertifiedRowSystem.Complement.ProtocolActionAccepts {I : Type u_1} {A : Type u_2} {Q : Type u_3} {F : Type u_4} [Fintype A] [Nonempty A] [DecidableEq A] [Fintype Q] [Fintype F] (D : CertifiedRowSystem I A Unit Q F) (action : ProtocolAction) (old new : ProtocolRow A) :

Acceptance of one fixed, replicated protocol action by the integrated row verifier.

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

    Arbitrary-certificate normalization #

    theorem CertifiedRowSystem.Complement.evalProtocol_actions_eq_replicate {I : Type u_1} {A : Type u_2} {Q : Type u_3} {F : Type u_4} [Fintype A] [Nonempty A] [DecidableEq A] [Fintype Q] [Fintype F] (D : CertifiedRowSystem I A Unit Q F) (q out : ProtocolVerifier Q F) (expected : ProtocolAction) (old new : ProtocolRow A) (actions : List ProtocolAction) (hselected : q.selectedAction = some expected) (heval : (deterministicComplementSystem D).evalStep q old new actions = some out) (hdone : protocolStepDone D out = true) :
    actions = List.replicate (List.length old) expected

    Once an action has been selected, every certificate cell of an accepting run must repeat it.

    Every accepting arbitrary certificate is equivalent to repeating its first action. This is the normalization bridge between CertifiedRowSystem.RowStep and the per-action correctness interface.

    Dispatch simulations #

    theorem CertifiedRowSystem.Complement.evalProtocol_from_boot {I : Type u_1} {A : Type u_2} {Q : Type u_3} {F : Type u_4} [Fintype A] [Nonempty A] [DecidableEq A] [Fintype Q] [Fintype F] (D : CertifiedRowSystem I A Unit Q F) (q : BootVerifier) (old new : ProtocolRow A) (actions : List ProtocolAction) :

    Once the boot scanner has been selected, the integrated verifier is its tagged map.

    Once an enumeration scanner has been selected, the integrated verifier is its tagged map.

    A selected path-initialization scanner remains in its tagged summand when every remaining certificate cell repeats its action.

    A selected path-extension scanner remains in its tagged summand.

    Fixed path-action correctness #

    theorem CertifiedRowSystem.Complement.evalProtocolAction_boot_iff {I : Type u_1} {A : Type u_2} {Q : Type u_3} {F : Type u_4} [Fintype A] [Nonempty A] [DecidableEq A] [Fintype Q] [Fintype F] (D : CertifiedRowSystem I A Unit Q F) (old new : ProtocolRow A) :

    Integrated correctness of the initialization action.

    beginFinal is intentionally not a primitive transition: the plateau branch of finishRound enters the final scan.

    Integrated correctness of the transition entering an inner enumeration round.

    Integrated correctness of one canonical inner-enumeration successor.

    Integrated correctness of classifying and advancing one outer vertex.

    Integrated correctness of the boundary between two counting rounds.

    Integrated correctness of one canonical successor in the final scan.

    Integrated correctness of the accepting final-enumeration transition.

    Integrated correctness of the startPath action.

    Integrated correctness of the finalStartPath action.

    Integrated correctness of pathStep.

    Integrated correctness of finalPathStep.

    Integrated correctness of finishWitness.

    Integrated correctness of finalFinishWitness.

    The compiled row checker accepts exactly the declarative protocol transition relation. In particular, this theorem covers arbitrary action certificates, not only certificates that were assumed in advance to repeat one action.