TorchLean API

FloatLib.Floats.Formats.BinaryInterchange.Proof.Exact

Constructors and projections for exact proof views #

These definitions attach exact, total, or finite semantic evidence to an executable model and move between the three proof-indexed views without changing its runtime bits.

The views let later theorems ask for precisely the exceptional-value hypothesis they need instead of carrying a record of unrelated facts. Constructors and projections pass through the underlying model value; their semantic proofs are erased.

@[inline]

Attach the exact total interpretation computed from an executable value.

Instances For
    @[inline]

    Attach a known exact finite dyadic interpretation.

    Instances For
      @[simp]

      The bundled executable value has its indexed exact interpretation.

      @[inline]

      Forget exact encoding distinctions while retaining the same executable value.

      Instances For
        @[inline]

        A finite exact refinement induces the corresponding real-valued refinement.

        Instances For
          @[inline]

          Attach the exact value and status computed by an executable IEEE outcome.

          Instances For
            @[simp]
            theorem FloatLib.Floats.Formats.BinaryInterchange.Model.OutcomeAt.denote {fmt : FloatFormat} {v : ExactValue} {status : IEEEStatus} (outcome : OutcomeAt fmt v status) :
            (↑outcome).value.exactValue = v

            The bundled outcome's value has its indexed exact interpretation.

            @[simp]
            theorem FloatLib.Floats.Formats.BinaryInterchange.Model.OutcomeAt.status_eq {fmt : FloatFormat} {v : ExactValue} {status : IEEEStatus} (outcome : OutcomeAt fmt v status) :
            (↑outcome).status = status

            The bundled outcome has its indexed IEEE exception status.

            @[inline]

            Project the outcome's value to its exact proof-indexed view.

            Instances For
              @[inline]

              Attach the exact total interpretation of an executable value.

              Instances For
                @[inline]

                Attach the finite interpretation of an executable value known to be finite.

                Instances For
                  @[inline]

                  Attach the signed-infinity interpretation of an executable value known to be infinite.

                  Instances For
                    @[inline]

                    Attach the payload-preserving interpretation of an executable value known to be a NaN.

                    Instances For
                      @[inline]

                      Positive infinity with its total interpretation in a conventional IEEE format.

                      Instances For
                        @[inline]

                        Negative infinity with its total interpretation in a conventional IEEE format.

                        Instances For
                          @[simp]

                          The bundled executable value has its indexed total interpretation.

                          The bundled value has the same interpretation through the generic numerical-system adapter.

                          @[inline]

                          A finite total refinement is the ordinary real-indexed refinement.

                          Instances For