CRDT
সিআরডিটি
Conflict-free Replicated Data Type — replica merge করলে conflict অসম্ভব; merge associative-commutative-idempotent।
also: conflict-free-replicated-data-type
State-based CRDT-র গণিত: state-গুলো join-semilattice-এ, merge = join:
merge(a, a) = a (idempotent — কতবারই মিশুক)
merge(a, b) = merge(b, a) (commutative)
merge(merge(a,b),c) = merge(a,merge(b,c)) (associative)
⇒ delivery order আর duplicate — কোনোটাই ফল বদলায় না
- Strong eventual consistency theorem: সব replica একই state set পেলে convergent — network heal হলে নিজে থেকেই এক রকম
- State-based (CvRDT, gossip-friendly) vs op-based (CmRDT, ছোট message, exactly-once causal delivery চায়) — দুই দলের example: G/PN-Counter, OR-Set, LWW-Register vs RGA sequence
- Collaborative editing (Automerge, Yjs), Riak data types, Redis CRDB — offline-first-এর গাণিতিক ভিত্তি