Definition of a rollup

Some one asked me about to provide a definition of a rollup - here is what I came up with

rollups can be loosely defined as solutions where transactions are put on chain but other things like transaction processing and state storage may be offchain

Good or bad ?

1 Like

Sounds good, one could also say that data-availability is on-chain and everything else is not defined by a rollup.

1 Like

The core essence of a rollup is data on-chain, computation off-chain. Particularly, a user is guaranteed to have the ability to personally reconstruct the full state of the system by scanning the chain history, and use that to deposit, withdraw or potentially enter as a sequencer.

2 Likes

Great!! Looks like everyone agrees!

I think Ed Felton’s definition complements @vbuterin’s (useful as an introduction):

Rollup is a general approach to scaling open contracts, that is, contracts that everyone can see and interact with. In rollup, calls to the contract and their arguments are written on-chain as calldata, but the actual computation and storage of the contract are done off-chain. Somebody posts an on-chain assertion about what the contract will do. You can think of the assertion as “rolling up” all of the calls and their results into a single on-chain transaction. Where rollup systems differ is in how they ensure that the assertions are correct.