A Rollup is a Layer-2 scaling solution similar to Plasma: a single mainchain contract holds all funds and a succinct cryptographic commitment to a larger ‘sidechain’ state (usually a Merkle tree of accounts, balances and their states). The sidechain state is maintained by users and operators off-chain, without reliance on L1 storage (which is the source of the biggest scalability win). What differentiates Rollup from Plasma is that it solves Plasma’s huge problem – data availability – by publishing some data for each transaction via the L1 network (in Ethereum specifically tx CALLDATA is used for this purpose). Thousands of transactions can thus be bundled up (rolled up) together in a single Rollup block. While this approach grows strictly linear in costs (O(n) of the number of transactions), it provides a practical 100-fold improvement in throughput, because CALLDATA is way cheaper than L1 storage and computation.