Skip to content

Deriving temporal columns from computed columns in the permuted realm #763

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
OlivierBBB opened this issue Mar 16, 2025 · 0 comments
Open
Labels
enhancement New feature or request

Comments

@OlivierBBB
Copy link
Collaborator

OlivierBBB commented Mar 16, 2025

The current approach to implementing EIP-6780: SELFDESTRUCT only in same transaction in the spec requires the introduction of a temporal column account/HAS_CODE_FIRST_IN_TXN. This is because in order to deal with SELFDESTRUCT's moving formard we must

  • log whether accounts have code at transaction start (account/HAS_CODE_FIRST_IN_TXN)
  • use that information to process SELFDESTRUCT's appropriately

The natural way to fill this account/HAS_CODE_FIRST_IN_TXN column would be to compute and constrain it in the permuted realm (acp_HAS_CODE_FIRST_IN_TXN) and derive the underlying un-permuted column in the temporal realm:

  1. define and constrain a column acp_HAS_CODE_FIRST_IN_TXN in the permuted realm via (fwd-fill-within
  2. reverse the permutation to recover the contents of an underlying temporal column account/HAS_CODE_FIRST_IN_TXN in the account perspective
@OlivierBBB OlivierBBB added the enhancement New feature or request label Mar 16, 2025
@OlivierBBB OlivierBBB changed the title Computed columns derived from computed columns Deriving unpermuted from computed columns in the permuted realm Mar 16, 2025
@OlivierBBB OlivierBBB changed the title Deriving unpermuted from computed columns in the permuted realm Deriving temporal columns from computed columns in the permuted realm Mar 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant