Documentation

DescriptiveComplexity.Problems.Wide.DrawSeq

The sequencer: heterogeneous stages in a row #

The matrix of a step formula is evaluated atom by atom, and the gates block by block: a sequence of machineries of different shapes – a stage atom's random access here, a tag-branched element loop there – with a checkpoint between consecutive ones and an exit after the last. The chain combinator of DescriptiveComplexity.Problems.Wide.DrawChain fixes a single stage family; this file is its dependent sibling: n stages with their own phase and shape types (PA/SA-indexed families), n + 1 checkpoints, the k-th dispatching into stage k's entry and the last leaving.

The per-stage machineries and their separation are parameters, so the matrix instantiates this with the kind-dependent atom machineries and the gates with the per-block gate machinery, and neither needs a new checkpoint proof.

The shapes #

inductive DescriptiveComplexity.Draw.SeqPh (n : ℕ) (PA : Fin n → Type) :

The phases of a sequence: n + 1 checkpoints and the stages'.

  • chk {n : ℕ} {PA : Fin n → Type} : Fin (n + 1) → SeqPh n PA

    The checkpoint before stage k (at k = n: after the last).

  • sub {n : ℕ} {PA : Fin n → Type} (a : Fin n) : PA a → SeqPh n PA

    A phase of stage a.

Instances For
    Dependency graph
    inductive DescriptiveComplexity.Draw.SeqSite (n : ℕ) (SA : Fin n → Type) :

    The sites of a sequence.

    Instances For
      Dependency graph
      Dependency graph
      def DescriptiveComplexity.Draw.seqOwn {n : ℕ} {PA SA : Fin n → Type} (ownA : (a : Fin n) → PA a → SA a) :
      SeqPh n PA → SeqSite n SA

      The owner of each phase of a sequence, over the stages' owners.

      Equations
      Instances For
        Dependency graph
        def DescriptiveComplexity.Draw.seqRule {A Q W P : Type} {n : ℕ} {PA SA : Fin n → Type} {ShA : (a : Fin n) → SA a → Type} (one : A) (wk rg : W) (emb : SeqPh n PA → P) (ruleA : (a : Fin n) → (s : SA a) → ShA a s → Rule A Q W P) (entry : (a : Fin n) → PA a) (enterSt : Fin n → (Q → A) → (W → A) → Q → A) (exitPh : P) (i : SeqSite n SA) :
        SeqSh n ShA i → Rule A Q W P

        The rules of a sequence: per checkpoint the walk back and the dispatch – into the next stage's entry, or out after the last.

        Equations
        Instances For
          Dependency graph