Documentation

EvmYul.EVM.Semantics

Equations
Instances For

    Returns the instruction from arr at pc assuming it is valid.

    The Push instruction also returns the argument as an EVM word along with the width of the instruction.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      def EvmYul.EVM.byteAt (μ₀ μ₁ : UInt256) :
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            def EvmYul.EVM.call (fuel gasCost : ) (blobVersionedHashes : List ByteArray) (gas source recipient t value value' inOffset inSize outOffset outSize : UInt256) (permission : Bool) (evmState : State) :
            Equations
            Instances For
              Instances For
                def EvmYul.EVM.X (fuel : ) (validJumps : Array UInt256) (evmState : State) :

                Iterative progression of step

                Equations
                Instances For

                  The code execution function

                  Equations
                  Instances For
                    Equations
                    Instances For
                      def EvmYul.EVM.Θ (fuel : ) (blobVersionedHashes : List ByteArray) (createdAccounts : Batteries.RBSet AccountAddress compare) (genesisBlockHeader : BlockHeader) (blocks : ProcessedBlocks) (σ σ₀ : AccountMap) (A : Substate) (s o r : AccountAddress) (c : ToExecute) (g p v v' : UInt256) (d : ByteArray) (e : ) (H : BlockHeader) (w : Bool) :

                      Message cal σ - evm state A - accrued substate s - sender o - transaction originator r - recipient c - the account whose code is to be called, usually the same as r g - available gas p - effective gas price v - value v' - value in the execution context d - input data of the call e - depth of the message-call / contract-creation stack w - permissions to make modifications to the stack

                      NB - This is implemented using the 'boolean' fragment with ==, <=, ||, etc. The 'prop' version will come next once we have the comutable one.

                      Instances For
                        def EvmYul.EVM.Υ (fuel : ) (σ : AccountMap) (H_f : ) (H genesisBlockHeader : BlockHeader) (blocks : ProcessedBlocks) (T : Transaction) (S_T : AccountAddress) :
                        Instances For