Documentation

LeanPool.GapCVP.Part06C

GapCVP proof, part 06, continuation 03 #

def GapCVP.SourceMixedRadixUnaryQuotientRemainderTM.sourceUnaryDivisionDividendPrefixTrace (count : ) (valid : Bool) (remaining archive dividend modulus modulusScratch quotient residueStack output : List Bool) :
StateTransition.EvalsToInTime sourceUnaryDivisionMachine.step (sourceUnaryDivisionConfiguration 0 valid (List.replicate count true ++ false :: remaining) archive dividend modulus modulusScratch quotient residueStack output) (some (sourceUnaryDivisionConfiguration 1 valid remaining (false :: (List.replicate count true ++ archive)) (List.replicate count true ++ dividend) modulus modulusScratch quotient residueStack output)) (count + 1)

Internal support shared across GapCVP continuation modules.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    def GapCVP.SourceMixedRadixUnaryQuotientRemainderTM.sourceUnaryDivisionDividendMissingTrace (count : ) (valid : Bool) (archive dividend modulus modulusScratch quotient residueStack output : List Bool) :
    StateTransition.EvalsToInTime sourceUnaryDivisionMachine.step (sourceUnaryDivisionConfiguration 0 valid (List.replicate count true) archive dividend modulus modulusScratch quotient residueStack output) (some (sourceUnaryDivisionConfiguration 2 false [] (List.replicate count true ++ archive) (List.replicate count true ++ dividend) modulus modulusScratch quotient residueStack output)) (count + 1)

    Internal support shared across GapCVP continuation modules.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      def GapCVP.SourceMixedRadixUnaryQuotientRemainderTM.sourceUnaryDivisionModulusPrefixTrace (count : ) (valid : Bool) (remaining archive dividend modulus modulusScratch quotient residueStack output : List Bool) :
      StateTransition.EvalsToInTime sourceUnaryDivisionMachine.step (sourceUnaryDivisionConfiguration 1 valid (List.replicate count true ++ false :: remaining) archive dividend modulus modulusScratch quotient residueStack output) (some (sourceUnaryDivisionConfiguration 2 valid remaining (false :: (List.replicate count true ++ archive)) dividend (List.replicate count true ++ modulus) modulusScratch quotient residueStack output)) (count + 1)

      Internal support shared across GapCVP continuation modules.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        def GapCVP.SourceMixedRadixUnaryQuotientRemainderTM.sourceUnaryDivisionModulusMissingTrace (count : ) (valid : Bool) (archive dividend modulus modulusScratch quotient residueStack output : List Bool) :
        StateTransition.EvalsToInTime sourceUnaryDivisionMachine.step (sourceUnaryDivisionConfiguration 1 valid (List.replicate count true) archive dividend modulus modulusScratch quotient residueStack output) (some (sourceUnaryDivisionConfiguration 2 false [] (List.replicate count true ++ archive) dividend (List.replicate count true ++ modulus) modulusScratch quotient residueStack output)) (count + 1)

        Internal support shared across GapCVP continuation modules.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def GapCVP.SourceMixedRadixUnaryQuotientRemainderTM.sourceUnaryDivisionSuffixTrace (source archive dividend modulus modulusScratch quotient residueStack output : List Bool) (valid : Bool) :
          StateTransition.EvalsToInTime sourceUnaryDivisionMachine.step (sourceUnaryDivisionConfiguration 2 valid source archive dividend modulus modulusScratch quotient residueStack output) (some (sourceUnaryDivisionConfiguration 3 valid [] (source.reverse ++ archive) dividend modulus modulusScratch quotient residueStack output)) (source.length + 1)

          Internal support shared across GapCVP continuation modules.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            def GapCVP.SourceMixedRadixUnaryQuotientRemainderTM.sourceUnaryDivisionRestoreSourceTrace (archive dividend modulus modulusScratch quotient residueStack output : List Bool) (valid : Bool) :
            StateTransition.EvalsToInTime sourceUnaryDivisionMachine.step (sourceUnaryDivisionConfiguration 3 valid [] archive dividend modulus modulusScratch quotient residueStack output) (some (sourceUnaryDivisionConfiguration 4 valid [] [] dividend modulus modulusScratch quotient residueStack (false :: (archive.reverse ++ output)))) (archive.length + 1)

            Internal support shared across GapCVP continuation modules.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              def GapCVP.SourceMixedRadixUnaryQuotientRemainderTM.sourceUnaryDivisionCleanupTrace (modulusCount scratchCount dividendCount residueCount : ) (valid : Bool) (output : List Bool) :
              StateTransition.EvalsToInTime sourceUnaryDivisionMachine.step (sourceUnaryDivisionConfiguration 9 valid [] [] (List.replicate dividendCount true) (List.replicate modulusCount true) (List.replicate scratchCount true) [] (List.replicate residueCount true) output) (some (Turing.haltList sourceUnaryDivisionMachine output)) (modulusCount + scratchCount + dividendCount + residueCount + 4)

              Internal support shared across GapCVP continuation modules.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                def GapCVP.SourceMixedRadixUnaryQuotientRemainderTM.sourceUnaryDivisionModuloTrace (modulus quotientCount remainder previous : ) (hremainder : remainder < modulus) (output : List Bool) :
                StateTransition.EvalsToInTime sourceUnaryDivisionMachine.step (sourceUnaryDivisionConfiguration 5 true [] [] (List.replicate (modulus * quotientCount + remainder) true) (List.replicate modulus true) [] (List.replicate previous true) [] output) (some (Turing.haltList sourceUnaryDivisionMachine (List.replicate (quotientCount + previous) true ++ false :: (List.replicate remainder true ++ output)))) (quotientCount * (2 * modulus + 3) + 4 * modulus + previous + 12)

                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.