Documentation

LeanPool.GapCVP.Part04F

GapCVP proof, part 04, continuation 06 #

GapCVP reduction support.

Equations
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
        noncomputable def GapCVP.CNFFlatWholeWordFoldTM.totalVerifierSortedFiveFamilyFlatFoldInput (bound : Polynomial ) {verifier : List Bool × List BoolBool} (machine : VerifierTM verifier) (input : List Bool) :

        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

            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

                GapCVP reduction support.

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

                  GapCVP reduction support.

                  Equations
                  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

                        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

                            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

                                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

                                    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

                                        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

                                            GapCVP reduction support.

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

                                              GapCVP reduction support.

                                              Equations
                                              • One or more equations did not get rendered due to their size.
                                              Instances For
                                                def GapCVP.CNFUnaryPairIndexTM.unaryPairConfiguration (phase : Fin 12) (input first second matchedFirst matchedSecond base outer output scratch : List Bool) :

                                                GapCVP reduction support.

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

                                                  Executes the unaryPairStepTac machine-step simplifier.

                                                  Equations
                                                  Instances For
                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_first_true (input first second matchedFirst matchedSecond base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 0 (true :: input) first second matchedFirst matchedSecond base outer output scratch) = some (unaryPairConfiguration 0 input (true :: first) second matchedFirst matchedSecond base outer output scratch)
                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_first_false (input first second matchedFirst matchedSecond base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 0 (false :: input) first second matchedFirst matchedSecond base outer output scratch) = some (unaryPairConfiguration 1 input first second matchedFirst matchedSecond base outer output scratch)

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_first_missing (first second matchedFirst matchedSecond base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 0 [] first second matchedFirst matchedSecond base outer output scratch) = some (unaryPairConfiguration 11 [] first second matchedFirst matchedSecond base outer output scratch)
                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_second_true (input first second matchedFirst matchedSecond base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 1 (true :: input) first second matchedFirst matchedSecond base outer output scratch) = some (unaryPairConfiguration 1 input first (true :: second) matchedFirst matchedSecond base outer output scratch)
                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_second_false (input first second matchedFirst matchedSecond base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 1 (false :: input) first second matchedFirst matchedSecond base outer output scratch) = some (unaryPairConfiguration 2 input first second matchedFirst matchedSecond base outer output scratch)

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_second_missing (first second matchedFirst matchedSecond base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 1 [] first second matchedFirst matchedSecond base outer output scratch) = some (unaryPairConfiguration 11 [] first second matchedFirst matchedSecond base outer output scratch)
                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_compare_match (first second matchedFirst matchedSecond base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 2 [] (true :: first) (true :: second) matchedFirst matchedSecond base outer output scratch) = some (unaryPairConfiguration 2 [] first second (true :: matchedFirst) (true :: matchedSecond) base outer output scratch)

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_compare_greater (first matchedFirst matchedSecond base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 2 [] first [] matchedFirst matchedSecond base outer output scratch) = some (unaryPairConfiguration 3 [] first [] matchedFirst matchedSecond base outer output scratch)

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_compare_less (second matchedFirst matchedSecond base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 2 [] [] (true :: second) matchedFirst matchedSecond base outer output scratch) = some (unaryPairConfiguration 5 [] [] (true :: second) matchedFirst matchedSecond base outer output scratch)

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_compare_trailing (bit : Bool) (input first second matchedFirst matchedSecond base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 2 (bit :: input) first second matchedFirst matchedSecond base outer output scratch) = some (unaryPairConfiguration 11 (bit :: input) first second matchedFirst matchedSecond base outer output scratch)
                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_greater_base_first (first matchedFirst matchedSecond base outer output : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 3 [] (true :: first) [] matchedFirst matchedSecond base outer output []) = some (unaryPairConfiguration 3 [] first [] matchedFirst matchedSecond (true :: base) (true :: outer) (true :: output) [])

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_greater_base_matched (matchedFirst matchedSecond base outer output : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 3 [] [] [] (true :: matchedFirst) matchedSecond base outer output []) = some (unaryPairConfiguration 3 [] [] [] matchedFirst matchedSecond (true :: base) (true :: outer) (true :: output) [])

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_greater_base_finish (matchedSecond base outer output : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 3 [] [] [] [] matchedSecond base outer output []) = some (unaryPairConfiguration 4 [] [] [] [] matchedSecond base outer output [])

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_greater_offset_step (matchedSecond base outer output : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 4 [] [] [] [] (true :: matchedSecond) base outer output []) = some (unaryPairConfiguration 4 [] [] [] [] matchedSecond base outer (true :: output) [])

                                                    Internal support shared across GapCVP continuation modules.

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_less_base_second (second matchedFirst matchedSecond base outer output : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 5 [] [] (true :: second) matchedFirst matchedSecond base outer output []) = some (unaryPairConfiguration 5 [] [] second matchedFirst matchedSecond (true :: base) (true :: outer) output [])

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_less_base_matched (matchedFirst matchedSecond base outer output : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 5 [] [] [] matchedFirst (true :: matchedSecond) base outer output []) = some (unaryPairConfiguration 5 [] [] [] matchedFirst matchedSecond (true :: base) (true :: outer) output [])

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_less_base_finish (matchedFirst base outer output : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 5 [] [] [] matchedFirst [] base outer output []) = some (unaryPairConfiguration 6 [] [] [] matchedFirst [] base outer output [])

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_less_offset_step (matchedFirst base outer output : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 6 [] [] [] (true :: matchedFirst) [] base outer output []) = some (unaryPairConfiguration 6 [] [] [] matchedFirst [] base outer (true :: output) [])

                                                    Internal support shared across GapCVP continuation modules.

                                                    Internal support shared across GapCVP continuation modules.

                                                    Internal support shared across GapCVP continuation modules.

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_square_copy_step (base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 8 [] [] [] [] [] (true :: base) outer output scratch) = some (unaryPairConfiguration 8 [] [] [] [] [] base outer (true :: output) (true :: scratch))

                                                    Internal support shared across GapCVP continuation modules.

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_square_restore_step (base outer output scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 9 [] [] [] [] [] base outer output (true :: scratch)) = some (unaryPairConfiguration 9 [] [] [] [] [] (true :: base) outer output scratch)

                                                    Internal support shared across GapCVP continuation modules.

                                                    Internal support shared across GapCVP continuation modules.

                                                    Internal support shared across GapCVP continuation modules.

                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_failure_input_step (bit : Bool) (input first second matchedFirst matchedSecond base outer scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 11 (bit :: input) first second matchedFirst matchedSecond base outer [] scratch) = some (unaryPairConfiguration 11 input first second matchedFirst matchedSecond base outer [] scratch)
                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_failure_first_step (bit : Bool) (first second matchedFirst matchedSecond base outer scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 11 [] (bit :: first) second matchedFirst matchedSecond base outer [] scratch) = some (unaryPairConfiguration 11 [] first second matchedFirst matchedSecond base outer [] scratch)
                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_failure_second_step (bit : Bool) (second matchedFirst matchedSecond base outer scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 11 [] [] (bit :: second) matchedFirst matchedSecond base outer [] scratch) = some (unaryPairConfiguration 11 [] [] second matchedFirst matchedSecond base outer [] scratch)
                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_failure_matchedFirst_step (bit : Bool) (matchedFirst matchedSecond base outer scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 11 [] [] [] (bit :: matchedFirst) matchedSecond base outer [] scratch) = some (unaryPairConfiguration 11 [] [] [] matchedFirst matchedSecond base outer [] scratch)
                                                    theorem GapCVP.CNFUnaryPairIndexTM.unaryPair_failure_matchedSecond_step (bit : Bool) (matchedSecond base outer scratch : List Bool) :
                                                    actualUnaryPairIndexMachine.step (unaryPairConfiguration 11 [] [] [] [] (bit :: matchedSecond) base outer [] scratch) = some (unaryPairConfiguration 11 [] [] [] [] matchedSecond base outer [] scratch)