Documentation

LeanPool.GapCVP.Part04B

GapCVP proof, part 04, continuation 02 #

noncomputable def GapCVP.CNFNaturalOrderCertifiedComparator.certifiedNaturalFinishTrace (outcome : CNFEncodedClauseSort.EncodedWordOrdering) (input firstCounter firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output : List Bool) :
StateTransition.EvalsToInTime CNFNaturalOrderComparator.delimitedNaturalComparisonMachine.step (CNFNaturalOrderComparator.naturalCompareConfiguration 7 outcome input firstCounter firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output) (some (Turing.haltList CNFNaturalOrderComparator.delimitedNaturalComparisonMachine (CNFEncodedClauseSort.delimitedCompareRestoredWord outcome input source sourcePrefix output))) (firstCounter.length + firstReversed.length + secondCounter.length + secondReversed.length + firstForward.length + secondForward.length + 3 * input.length + source.length + sourcePrefix.length + 5)

Restore the source and finish the natural comparison with the supplied ordering result.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    noncomputable def GapCVP.CNFNaturalOrderCertifiedComparator.certifiedNaturalFirstPrefixTrace (outcome : CNFEncodedClauseSort.EncodedWordOrdering) (count : ℕ) (tail firstCounter firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output : List Bool) :
    StateTransition.EvalsToInTime CNFNaturalOrderComparator.delimitedNaturalComparisonMachine.step (CNFNaturalOrderComparator.naturalCompareConfiguration 0 outcome (List.replicate count true ++ false :: tail) firstCounter firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output) (some (CNFNaturalOrderComparator.naturalCompareConfiguration 1 outcome tail (List.replicate count true ++ firstCounter) firstReversed secondCounter secondReversed firstForward secondForward (false :: (List.replicate count true ++ source)) (List.replicate (count + 1) true ++ sourcePrefix) output)) (count + 1)

    Read the first unary length prefix into the counter and save the consumed source bits.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      noncomputable def GapCVP.CNFNaturalOrderCertifiedComparator.certifiedNaturalFirstMissingPrefixTrace (outcome : CNFEncodedClauseSort.EncodedWordOrdering) (count : ℕ) (firstCounter firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output : List Bool) :
      StateTransition.EvalsToInTime CNFNaturalOrderComparator.delimitedNaturalComparisonMachine.step (CNFNaturalOrderComparator.naturalCompareConfiguration 0 outcome (List.replicate count true) firstCounter firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output) (some (CNFNaturalOrderComparator.naturalCompareConfiguration 7 CNFEncodedClauseSort.EncodedWordOrdering.invalid [] (List.replicate count true ++ firstCounter) firstReversed secondCounter secondReversed firstForward secondForward (List.replicate count true ++ source) (List.replicate count true ++ sourcePrefix) output)) (count + 1)

      Enter the invalid-result phase when the first length prefix lacks its delimiter.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        noncomputable def GapCVP.CNFNaturalOrderCertifiedComparator.certifiedNaturalFirstPartialPayloadTrace (outcome : CNFEncodedClauseSort.EncodedWordOrdering) (payload remainingCounter firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output : List Bool) :
        StateTransition.EvalsToInTime CNFNaturalOrderComparator.delimitedNaturalComparisonMachine.step (CNFNaturalOrderComparator.naturalCompareConfiguration 1 outcome payload (List.replicate payload.length true ++ remainingCounter) firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output) (some (CNFNaturalOrderComparator.naturalCompareConfiguration 1 outcome [] remainingCounter (payload.reverse ++ firstReversed) secondCounter secondReversed firstForward secondForward (payload.reverse ++ source) (List.replicate payload.length true ++ sourcePrefix) output)) payload.length

        Copy the available first payload while keeping its remaining length counter.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          noncomputable def GapCVP.CNFNaturalOrderCertifiedComparator.certifiedNaturalSecondPrefixTrace (outcome : CNFEncodedClauseSort.EncodedWordOrdering) (count : ℕ) (tail firstCounter firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output : List Bool) :
          StateTransition.EvalsToInTime CNFNaturalOrderComparator.delimitedNaturalComparisonMachine.step (CNFNaturalOrderComparator.naturalCompareConfiguration 2 outcome (List.replicate count true ++ false :: tail) firstCounter firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output) (some (CNFNaturalOrderComparator.naturalCompareConfiguration 3 outcome tail firstCounter firstReversed (List.replicate count true ++ secondCounter) secondReversed firstForward secondForward (false :: (List.replicate count true ++ source)) (List.replicate (count + 1) true ++ sourcePrefix) output)) (count + 1)

          Read the second unary length prefix into its counter and preserve the source.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            noncomputable def GapCVP.CNFNaturalOrderCertifiedComparator.certifiedNaturalSecondMissingPrefixTrace (outcome : CNFEncodedClauseSort.EncodedWordOrdering) (count : ℕ) (firstCounter firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output : List Bool) :
            StateTransition.EvalsToInTime CNFNaturalOrderComparator.delimitedNaturalComparisonMachine.step (CNFNaturalOrderComparator.naturalCompareConfiguration 2 outcome (List.replicate count true) firstCounter firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output) (some (CNFNaturalOrderComparator.naturalCompareConfiguration 7 CNFEncodedClauseSort.EncodedWordOrdering.invalid [] firstCounter firstReversed (List.replicate count true ++ secondCounter) secondReversed firstForward secondForward (List.replicate count true ++ source) (List.replicate count true ++ sourcePrefix) output)) (count + 1)

            Enter the invalid-result phase when the second length prefix lacks its delimiter.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              noncomputable def GapCVP.CNFNaturalOrderCertifiedComparator.certifiedNaturalSecondPartialPayloadTrace (outcome : CNFEncodedClauseSort.EncodedWordOrdering) (payload remainingCounter firstCounter firstReversed secondReversed firstForward secondForward source sourcePrefix output : List Bool) :
              StateTransition.EvalsToInTime CNFNaturalOrderComparator.delimitedNaturalComparisonMachine.step (CNFNaturalOrderComparator.naturalCompareConfiguration 3 outcome payload firstCounter firstReversed (List.replicate payload.length true ++ remainingCounter) secondReversed firstForward secondForward source sourcePrefix output) (some (CNFNaturalOrderComparator.naturalCompareConfiguration 3 outcome [] firstCounter firstReversed remainingCounter (payload.reverse ++ secondReversed) firstForward secondForward (payload.reverse ++ source) (List.replicate payload.length true ++ sourcePrefix) output)) payload.length

              Copy the available second payload while keeping its remaining length counter.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                noncomputable def GapCVP.CNFNaturalOrderCertifiedComparator.certifiedNaturalFirstRecordTrace (outcome : CNFEncodedClauseSort.EncodedWordOrdering) (payload tail firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output : List Bool) :
                StateTransition.EvalsToInTime CNFNaturalOrderComparator.delimitedNaturalComparisonMachine.step (CNFNaturalOrderComparator.naturalCompareConfiguration 0 outcome (BinaryEncoding.lengthPrefixedWord payload ++ tail) [] firstReversed secondCounter secondReversed firstForward secondForward source sourcePrefix output) (some (CNFNaturalOrderComparator.naturalCompareConfiguration 2 outcome tail [] (payload.reverse ++ firstReversed) secondCounter secondReversed firstForward secondForward ((BinaryEncoding.lengthPrefixedWord payload).reverse ++ source) (List.replicate (BinaryEncoding.lengthPrefixedWord payload).length true ++ sourcePrefix) output)) (2 * payload.length + 2)

                Read a complete first length-prefixed record and advance to the second record.

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

                  GapCVP reduction support.

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

                    GapCVP reduction support.

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

                      Internal support shared across GapCVP continuation modules.

                      Equations
                      Instances For
                        theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarkerHorner_eval (polynomial : Polynomial ℕ) (value : ℕ) :
                        polynomialRowMarkerHorner polynomial value (polynomial.natDegree + 1) 0 = Polynomial.eval value polynomial

                        Internal support shared across GapCVP continuation modules.

                        @[reducible, inline]

                        Internal support shared across GapCVP continuation modules.

                        Equations
                        Instances For

                          Internal support shared across GapCVP continuation modules.

                          Equations
                          Instances For
                            def GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarkerPeek (polynomial : Polynomial ℕ) (stack : Fin 7) (present absent : Turing.TM2.Stmt (fun (x : Fin 7) => Bool) (Fin 9 × PolynomialRowMarkerStage polynomial) (Option Bool)) :
                            Turing.TM2.Stmt (fun (x : Fin 7) => Bool) (Fin 9 × PolynomialRowMarkerStage polynomial) (Option Bool)

                            Read a row-marker stack head into the state and branch on whether it is present.

                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              def GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarkerPop (polynomial : Polynomial ℕ) (stack : Fin 7) (continuation : Turing.TM2.Stmt (fun (x : Fin 7) => Bool) (Fin 9 × PolynomialRowMarkerStage polynomial) (Option Bool)) :
                              Turing.TM2.Stmt (fun (x : Fin 7) => Bool) (Fin 9 × PolynomialRowMarkerStage polynomial) (Option Bool)

                              Pop a row-marker stack while preserving the bit stored in the machine state.

                              Equations
                              Instances For
                                def GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarkerPushBit (polynomial : Polynomial ℕ) (stack : Fin 7) (continuation : Turing.TM2.Stmt (fun (x : Fin 7) => Bool) (Fin 9 × PolynomialRowMarkerStage polynomial) (Option Bool)) :
                                Turing.TM2.Stmt (fun (x : Fin 7) => Bool) (Fin 9 × PolynomialRowMarkerStage polynomial) (Option Bool)

                                Push the stored row-marker bit, defaulting to false when the state is empty.

                                Equations
                                Instances For
                                  def GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarkerPushConstant (polynomial : Polynomial ℕ) (stack : Fin 7) (bit : Bool) (continuation : Turing.TM2.Stmt (fun (x : Fin 7) => Bool) (Fin 9 × PolynomialRowMarkerStage polynomial) (Option Bool)) :
                                  Turing.TM2.Stmt (fun (x : Fin 7) => Bool) (Fin 9 × PolynomialRowMarkerStage polynomial) (Option Bool)

                                  Push a fixed bit on a row-marker stack before the continuation.

                                  Equations
                                  Instances For

                                    Clear the stored bit and enter the selected polynomial stage and machine phase.

                                    Equations
                                    Instances For

                                      Push a sequence of constant bits, in list order, before executing the continuation.

                                      Equations
                                      Instances For

                                        Internal support shared across GapCVP continuation modules.

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

                                          Internal support shared across GapCVP continuation modules.

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

                                            Internal support shared across GapCVP continuation modules.

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

                                              Internal support shared across GapCVP continuation modules.

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

                                                Internal support shared across GapCVP continuation modules.

                                                Equations
                                                Instances For

                                                  Internal support shared across GapCVP continuation modules.

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

                                                    Internal support shared across GapCVP continuation modules.

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

                                                      Internal support shared across GapCVP continuation modules.

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

                                                        Internal support shared across GapCVP continuation modules.

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

                                                          Internal support shared across GapCVP continuation modules.

                                                          Equations
                                                          • One or more equations did not get rendered due to their size.
                                                          Instances For
                                                            @[reducible, inline]

                                                            Internal support shared across GapCVP continuation modules.

                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            Instances For
                                                              def GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarkerConfiguration (polynomial : Polynomial ℕ) (phase : Fin 9) (stage : PolynomialRowMarkerStage polynomial) (input source base baseScratch accumulator product output : List Bool) :

                                                              Internal support shared across GapCVP continuation modules.

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

                                                                Internal support shared across GapCVP continuation modules.

                                                                Executes the polynomialRowMarkerStepTac machine-step simplifier.

                                                                Equations
                                                                • One or more equations did not get rendered due to their size.
                                                                Instances For
                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_scan_step (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (bit : Bool) (input source base baseScratch accumulator product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 0 stage (bit :: input) source base baseScratch accumulator product output) = some (polynomialRowMarkerConfiguration polynomial 0 stage input (bit :: source) (true :: base) baseScratch accumulator product output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_scan_finish (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source base baseScratch accumulator product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 0 stage [] source base baseScratch accumulator product output) = some (polynomialRowMarkerConfiguration polynomial 1 stage [] source base baseScratch accumulator product output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_multiply_step (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source base baseScratch accumulator product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 1 stage [] source base baseScratch (true :: accumulator) product output) = some (polynomialRowMarkerConfiguration polynomial 2 stage [] source base baseScratch accumulator product output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_multiply_finish (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source base baseScratch product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 1 stage [] source base baseScratch [] product output) = some (polynomialRowMarkerConfiguration polynomial 4 stage [] source base baseScratch [] product output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_base_step (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source base baseScratch accumulator product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 2 stage [] source (true :: base) baseScratch accumulator product output) = some (polynomialRowMarkerConfiguration polynomial 2 stage [] source base (true :: baseScratch) accumulator (true :: product) output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_base_finish (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source baseScratch accumulator product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 2 stage [] source [] baseScratch accumulator product output) = some (polynomialRowMarkerConfiguration polynomial 3 stage [] source [] baseScratch accumulator product output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_restoreBase_step (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source base baseScratch accumulator product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 3 stage [] source base (true :: baseScratch) accumulator product output) = some (polynomialRowMarkerConfiguration polynomial 3 stage [] source (true :: base) baseScratch accumulator product output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_restoreBase_finish (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source base accumulator product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 3 stage [] source base [] accumulator product output) = some (polynomialRowMarkerConfiguration polynomial 1 stage [] source base [] accumulator product output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_product_step (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source base accumulator product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 4 stage [] source base [] accumulator (true :: product) output) = some (polynomialRowMarkerConfiguration polynomial 4 stage [] source base [] (true :: accumulator) product output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_coefficient_zero_step (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (hstage : ↑stage = 0) (source base accumulator output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 4 stage [] source base [] accumulator [] output) = some (polynomialRowMarkerConfiguration polynomial 5 stage [] source base [] (List.replicate (polynomial.coeff ↑stage) true ++ accumulator) [] output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_coefficient_succ_step (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (hstage : ↑stage ≠ 0) (source base accumulator output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 4 stage [] source base [] accumulator [] output) = some (polynomialRowMarkerConfiguration polynomial 1 (polynomialRowMarkerPredStage polynomial stage hstage) [] source base [] (List.replicate (polynomial.coeff ↑stage) true ++ accumulator) [] output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_payload_step (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source base accumulator product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 5 stage [] source base [] (true :: accumulator) product output) = some (polynomialRowMarkerConfiguration polynomial 5 stage [] source base [] accumulator (true :: product) (true :: output))

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_payload_finish (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source base product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 5 stage [] source base [] [] product output) = some (polynomialRowMarkerConfiguration polynomial 6 stage [] source base [] [] product (false :: output))

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_header_step (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source base product output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 6 stage [] source base [] [] (true :: product) output) = some (polynomialRowMarkerConfiguration polynomial 6 stage [] source base [] [] product (true :: output))

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_header_finish (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (source base output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 6 stage [] source base [] [] [] output) = some (polynomialRowMarkerConfiguration polynomial 7 stage [] source base [] [] [] output)

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_source_step (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (bit : Bool) (source base output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 7 stage [] (bit :: source) base [] [] [] output) = some (polynomialRowMarkerConfiguration polynomial 7 stage [] source base [] [] [] (bit :: output))

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_source_finish (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (base output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 7 stage [] [] base [] [] [] output) = some (polynomialRowMarkerConfiguration polynomial 8 stage [] [] base [] [] [] (false :: output))

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  theorem GapCVP.CNFPolynomialRowMarkerTM.polynomialRowMarker_prefix_step (polynomial : Polynomial ℕ) (stage : PolynomialRowMarkerStage polynomial) (base output : List Bool) :
                                                                  (polynomialRowMarkerMachine polynomial).step (polynomialRowMarkerConfiguration polynomial 8 stage [] [] (true :: base) [] [] [] output) = some (polynomialRowMarkerConfiguration polynomial 8 stage [] [] base [] [] [] (true :: output))

                                                                  Internal support shared across GapCVP continuation modules.

                                                                  Internal support shared across GapCVP continuation modules.