← Index
ARTEL 21: The Identity Violation
ARTEL 21 / Articles

The Identity Violation

Since block 481,824, one byte is not equal to one byte. The Law of Identity has been broken in Bitcoin's consensus rules for nine years.

The most fundamental rule of logic

The Law of Identity states that every thing is equal to itself. A = A. It is the foundation of all rational thought. Without it, no proposition can be evaluated, no argument can proceed, no system can be consistent.

Bitcoin is a system built on invariants. The 21 million coin supply is invariant. The 10-minute block interval is invariant. The proof-of-work difficulty adjustment is invariant. These invariants are what make Bitcoin trustworthy. They are the constants against which all other quantities are measured.

One invariant was broken on August 24, 2017, at block 481,824. The Segregated Witness hard fork activated. The change was subtle — a discount applied to witness data in the block weight calculation. The effect was profound: one byte of witness data was no longer equal to one byte of non-witness data in the fee market.

Both bytes require identical storage by every full node. Both bytes require identical validation. Both bytes require identical propagation across the network. Both bytes are permanent — committed to the chain, unerasable, unprunable. But one byte costs four times as much as the other in fees.

1 witness byte ≠ 1 non-witness byte. The fee market prices them differently. The network treats them identically. A ≠ A.

The experiment

The identity violation can be demonstrated without making any transactions. The violation is already visible in the protocol rules themselves.

The block weight formula, as defined by BIP-141:

block_weight = stripped_size × 3 + total_size
vsize = block_weight / 4

Where stripped_size is the block size without witness data, and total_size is the full serialized block size including witness data. For a block with no SegWit transactions, stripped_size = total_size, so block_weight = total_size × 4, and vsize = total_size. The vbyte equals the raw byte.

For a block where all data is witness data (the extreme case post-inscriptions), stripped_size is minimal (just the header and coinbase non-witness data), and total_size approaches the 4 MB weight cap. The vsize approaches 1 MB while the raw size approaches 4 MB. The ratio is 4:1.

Define the phantom bytes as the difference:

phantom_bytes = total_size − vsize

These are the bytes that exist on disk, that every node must store, validate, and propagate, but that the fee market does not price. They are the gap between the physical object and the accounting fiction.

The identity ratio is:

identity_ratio = total_size / vsize

Pre-SegWit, this ratio is 1.0. Every byte is priced. Post-SegWit, this ratio approaches 4.0 for witness-heavy blocks. One byte is worth up to four vbytes. A = 4A. The Law of Identity is violated.

The data

The charts below show the identity violation across the entire chain. The data is parsed directly from raw Bitcoin block files. Every block's raw size (tau), block weight, and virtual size are computed from the serialized transactions.

Data Set:
Loading dataset...
Cumulative Phantom Bytes

The cumulative phantom bytes chart shows the total number of bytes that have been written to the chain but not priced by the fee market. Pre-SegWit, the line is flat (no phantom bytes). Post-SegWit, the line climbs as witness-heavy blocks accumulate unpriced data. Each byte in this cumulative sum is a byte that every full node must store, but that no writer paid for.

Identity Ratio (block_size / vsize)

The identity ratio chart shows the per-block ratio of raw bytes to priced bytes. Pre-SegWit, the ratio is 1.0 — every byte is priced. Post-SegWit, the ratio climbs toward 4.0 for blocks that are fully witness-packed. The red dashed line at 1.0 is the Law of Identity: A = A. The gold line is what the chain actually produces. Where the gold line is above the red line, the identity is violated.

The conserved quantity

The fee market is supposed to price a conserved physical quantity. What is that quantity?

Blockspace prices permanent replicated memory. Every byte written to the blockchain is stored by every full node, validated by every full node, and propagated across the network. The storage is permanent — committed to the chain, unerasable, unprunable. The replication is universal — no node can opt out of storing any byte.

The conserved quantity is information surface area. Each block writes y bytes of permanent state. Over N blocks, the total surface is Σ(yi) bytes. This is the physical resource being allocated by the fee market.

Before SegWit, the fee market priced this quantity correctly. One byte of blockspace cost one byte of fee. The price signal aligned with the physical cost: storage, validation, propagation.

After SegWit, the fee market prices virtual bytes, not raw bytes. Witness data is discounted by 4×. The price signal no longer aligns with the physical cost. The conserved quantity is still information surface area, but the fee market no longer measures it accurately.

Block A vs Block B

Consider two blocks mined at the same difficulty, with the same proof-of-work, the same fee revenue, and the same number of satoshis transacted.

Property Block A (Legacy) Block B (Witness-Heavy)
PoW energy E E
Difficulty D D
Block energy (Ublock) U U
Nonce temperature T T
Raw size (τ) 1 MB 4 MB
Virtual size (vsize) 1 MB 1 MB
Surface written 1 MB 4 MB
Energy per surface MB E/1 E/4

Same energy. Same difficulty. Same nonce temperature. Same block energy. But Block B writes 4× more permanent memory into the chain's history.

The energy per unit of permanent storage is 4× cheaper for Block B. The protocol subsidizes witness storage by 4×. The fee market does not price the physical cost of the surface written.

energy_per_surface_MB = Ublock / τ
Block A: E / 1 MB = E per MB
Block B: E / 4 MB = E/4 per MB

The chart below shows this energy density across the entire chain. Each block's energy is divided by its raw size to produce the energy per megabyte of permanent storage.

Energy per Raw MB

Conservation degrades. Two blocks with identical proof-of-work energy can write vastly different amounts of permanent storage. Pre-SegWit, the coupling between energy expended and memory written is tight — the green bars show a fixed exchange rate. Post-SegWit, the same joules produce up to 4× more memory (red and purple bars). The protocol no longer enforces a fixed ratio between work and structure. Energy conservation holds in the physics sense — miners still burn the same joules — but the informational conservation breaks: the exchange rate between energy and memory becomes variable.

Two fee markets

What does a non-SegWit node see? What does the fee market represent for that node?

A non-SegWit node sees a 1 MB blockspace market. Every byte is priced equally. The fee market prices raw bytes. The price signal is: sat/byte of permanent storage.

A SegWit node sees a 4 vMB virtual market. Witness bytes are discounted by 4×. The fee market prices virtual bytes. The price signal is: sat/vbyte of permanent storage.

Property Non-SegWit Node SegWit Node
Block capacity seen 1 MB 4 vMB (1 MB base + 3 MB witness)
Fee market prices sat/MB (raw bytes) sat/vMB (weighted bytes)
What's priced All bytes equally Witness bytes at 1/4 cost
Blind to Witness storage cost

The fee markets are fundamentally different. They price different goods. The non-SegWit fee market prices the physical cost of storage. The SegWit fee market prices a virtual accounting fiction.

The chart below shows this divergence. Two lines: what users actually pay (sat/vB) vs what they would pay if bytes were priced uniformly (sat/byte). The gap is the witness subsidy — the structural discount that makes witness data 4× cheaper than legacy data.

Fee Market Divergence

Two thermometers, one system. If fees are the temperature signal — the thermodynamic pressure required to collapse entropy into structure — then the witness discount creates two thermometers reading the same system differently. Gold dots show blocks where both readings agree (identity holds). Red dots show blocks where they diverge (identity violated). The widening gap post-SegWit is the witness subsidy — the amount by which the fee market underprices actual storage. A system with two thermometers is a system without a temperature.

Dimensionality

The blockchain is a two-dimensional surface: block size (bytes per block) × chain length (number of blocks). Dimension 1 is itself a physical quantity worth measuring directly.

The paper defines the speed of memory as the rate at which unresolved entropy is converted into permanent structure. In block frame — the ledger's native frame, where time is measured in blocks — the speed of memory at block t is:

bblock(t) = τt / 1 block = τt
[bytes per block]

In block frame, the speed of memory is simply the raw block size — the physical storage burden every full node must carry forward. The chart shows this quantity across the entire chain, with Satoshi's 1 MB limit and the SegWit 4 MB theoretical maximum marked.

Speed of Memory (bytes/block)

The clock becomes unreliable. A clock whose hands move at a constant rate but whose face changes size is not a reliable clock. Pre-SegWit, every tick writes ≤ 1 MB (green bars). The resolution is fixed. Post-SegWit, each tick writes up to 4 MB — but the fee market only prices it as ≤ 1 MB. The block interval is constant; the informational surface per tick is not. Time as a measure of memory production becomes imprecise. The yellow, orange, and red bars show ticks that write more unpriced memory than the protocol accounts for.

The second dimension of the timespace surface is value density: how much conserved value is packed into each byte of permanent storage. For a block at height t, value density is:

ρt = Wt / τt
[satoshis per byte]

Where Wt is the inscribed value (subsidy + fees) and τt is the raw block size. This quantity measures the local efficiency with which entropy has been collapsed into structure. A high-density block concentrates substantial value into a small memory footprint; a low-density block distributes value across more bytes. The chart below shows this quantity across the entire chain.

Block Value Density (sats/byte)

Value density declines monotonically as the chain matures. At Genesis, 50 BTC were inscribed into ~285 bytes — approximately 17.5 million sats per byte. Today, 6.25 BTC plus fees are distributed across ~1.5 MB blocks — roughly 400 sats per byte. The decline reflects the cooling of the ledger: as the memory surface expands, the same absolute emission is spread across more bytes. Post-SegWit, the decline accelerates because blocks can now inscribe up to 4× more bytes per tick, while the subsidy continues its halving schedule. Value density is the curvature of the timespace surface — the geometric imprint of how efficiently conserved value has been compacted into the available memory.

The surface mass density — cumulative energy backing per byte of permanent storage (σ = cumulative_energy / cumulative_tau) — shows joules backing each byte of permanent storage. Pre-SegWit, this ratio is stable because raw bytes grow at the same rate as energy. Post-SegWit, raw bytes grow faster than energy (phantom bytes accumulate), so surface mass density drops. The chain's memory is inflating without corresponding energy backing — like monetary inflation, but for information. More bytes, same energy, weaker backing per byte.

Surface Mass Density

The Shannon-Boltzmann coupling remains stable. The entropy coupling chart shows the ratio of byte-level entropy to nonce-field entropy. Despite the identity violation and phantom bytes, this ratio has remained remarkably stable around 0.3 throughout Bitcoin's history (green bars). The entropy paid for (nonce search) continues to maintain a consistent relationship with the entropy written (block structure). This stability suggests a deep thermodynamic coupling that persists even as the accounting model diverges.

Entropy Coupling (byte entropy / nonce entropy)

The thought experiment

To make the violation concrete, consider two transactions with identical structure, identical inputs and outputs, and identical fee rates (sat/vB):

Property Transaction A (Legacy) Transaction B (SegWit)
Raw size 250 bytes 250 bytes
Virtual size 250 vB ~100 vB
Fee rate 10 sat/vB 10 sat/vB
Total fee 2,500 sats ~1,000 sats
Storage burden on nodes 250 bytes 250 bytes
Validation cost identical identical
Propagation cost identical identical

Both transactions are 250 bytes on disk. Both require 250 bytes of permanent storage by every full node. Both require identical validation and propagation. But the SegWit transaction pays 60% less in fees because its virtual size is discounted.

The writer of Transaction B pays for 100 bytes of storage but enshrines 250 bytes. The 150 bytes of difference are phantom bytes — uncompensated, externalized to every node operator, in perpetuity.

This externality has two regimes.

Regime 1 — Under 1 MB: The witness discount means the sender paid fewer sats for the same disk space than a legacy transaction would have. The deficit — the gap between what was paid and what the storage actually costs — is absorbed by every node operator who must store the block.

Regime 2 — Over 1 MB: The weight formula allows witness data to count at one-quarter. The phantom bytes in that block are written to the chain without any sender paying for their permanent storage. Every full node carries that burden forever.

This is not a thought experiment. The current chain's blocks regularly contain 3–4 MB of raw data priced as 1–1.25 MB of vsize. The largest inscription-era block (height 836,903, year 2024) is 3,993,936 bytes of raw serialized data, priced as 0.99 vMB. The writer paid for 0.99. The chain stores 3.99. The factor is 4.03×.[1]

Why this matters

The Law of Identity is not a philosophical abstraction. It is the foundation of consistency in any formal system. A system where A ≠ A is a system where contradictions can arise, where invariants can be violated, where the accounting can be broken.

Bitcoin's integrity depends on its invariants. The 21 million coin supply is invariant. The block size limit was invariant — until SegWit introduced a discount that made the effective limit 4 MB for witness-heavy blocks. The fee market was supposed to price block space — but it prices vbytes, not bytes, creating a structural gap between the price signal and the physical cost.

The phantom bytes are not a theoretical concern. They are the accumulation of a consensus-certified externality. Every phantom byte is a byte that was written to the chain without the writer paying for its persistence. The cost is paid by every node operator, in storage, in bandwidth, in validation time, forever.

The Landauer gap article frames this in thermodynamic terms: a bit of information that is committed to a substrate that cannot opt out of storing it has been made thermodynamically permanent. The persistence of that bit is a debit against the universe's energy budget. The witness discount amplifies this gap by making it cheap to write data that the network must carry forever.

The 0.75 MB gap article quantifies the externality in mass terms: the chain currently carries ~185 GB of phantom bytes, equivalent to ~22 tons of persistence debt at the Landauer limit. This is the cost of the identity violation, expressed in physical units.

The fix

The fix is simple: restore the identity. Make one byte equal to one byte. Remove the witness discount from the block weight calculation. Enforce the original 1 MB serialized block size limit that Satoshi defined at Genesis.

Under this rule:

This is the proposal in the BIP for removal of the witness discount. The BIP preserves SegWit serialization, witness commitments, transaction malleability fixes, script versioning, and Taproot compatibility. It removes only the accounting fiction that makes one byte worth less than another.

The identity violation has persisted for nine years. Every block since SegWit activation has added to the phantom bytes. The cumulative externality is now measured in hundreds of gigabytes. The fix is to restore the invariant that was broken: one byte, one byte, one price.

Bitcoin cannot preserve value if 1 ≠ 1. The fix is to make 1 = 1 again.
Related
The Landauer Gap — the thermodynamic framing of persistence cost externalized by non-monetary block data.
The 0.75 MB Gap — the mass-value bound analysis showing the structural break post-SegWit.
BIP-?: Removal of Witness Discount — the proposal to restore uniform byte accounting.
  1. Empirical block data computed from raw blk files via scripts/byte_analysis.py. The largest inscription-era block (height 836,903, year 2024) has raw size 3,993,936 bytes and block weight 3,978,432 weight units, giving vsize 994,608 bytes. Ratio: 4.016×.
  2. BIP-141: Segregated Witness (Consensus layer). Defines the witness discount and block weight formula.
  3. Law of Identity. The most fundamental rule of logic: A = A.
  4. Bitcoin Lens. Empirical block data and chain thermodynamic visualizations.