Skip to main content
Try out the RareSkills ZK AI Tutor!

Blog

The technical content top engineers rely on to level up.

30 min read

P vs NP and its application to zero knowledge proofs

P vs NP and its application to zero knowledge proofs The P = NP problem asks: "If we can quickly verify a solution to a problem is correct, can we also quickly compute the solution?" Most researchers...

Last updated onAug 29, 2024
Read Article

11 min read

Homomorphisms by Example

Homomorphisms by Example A homomorphism between two groups exists if a structure preserving map between the two groups exists. Suppose we have two algebraic data structures $(A,\square)$ and $(B,...

Last updated onFeb 25, 2026
Read Article

12 min read

Abstract Algebra

Abstract Algebra Abstract Algebra is the study of sets that have one or more operators on that set. For our purposes, we only care about sets where the operator is a binary operator. Given a set with...

Last updated onSep 10, 2024
Read Article

25 min read

Arithmetic Circuits for ZK

Arithmetic Circuits for ZK In the context of zero-knowledge proofs, an arithmetic circuit is a system of equations that models a problem in NP. A key point from our article on P vs NP is that any...

Last updated onSep 28, 2024
Read Article

16 min read

Invariant Testing in Foundry

Invariant Testing in Foundry Introduction In this article, we will discuss invariants and how to perform an invariant test on Solidity smart contracts using Foundry test suites. Invariant testing is...

Last updated onOct 22, 2025
Read Article

6 min read

Solidity Mutation Testing

Solidity Mutation Testing Mutation testing is a method to check the quality of the test suite by intentionally introducing bugs into the code and ensuring the tests catch the bug. The kind of bugs...

Last updated onOct 29, 2025
Read Article

6 min read

Ethereum precompiled contracts

Ethereum precompiled contracts Ethereum precompiles behave like smart contracts built into the Ethereum protocol. The nine precompiles live in addresses 0x01 to 0x09. The utility of precompiles falls...

Last updated onOct 29, 2025
Read Article

11 min read

How ERC721 Enumerable Works

How ERC721 Enumerable Works An Enumerable ERC721 is an ERC721 with added functionality that enables a smart contract to list all the NFTs an address owns. This article describes how functions and how...

Last updated onOct 22, 2025
Read Article

7 min read

The interest rate model of Aave V3 and Compound V2

The interest rate model of Aave V3 and Compound V2 Interest rates in TradFi (traditional finance) are largely determined by central banks and influenced by market factors. In contrast, DeFi interest...

Last updated onAug 29, 2025
Read Article

3 min read

The Fallback Extension Pattern

The Fallback Extension Pattern The fallback-extension pattern is a simple way to circumvent the 24 KB smart contract size limit. Suppose we have functions and in our primary contract and wish to add...

Last updated onOct 22, 2025
Read Article

6 min read

EIP 1967 Storage Slots for Proxies

EIP 1967 Storage Slots for Proxies EIP 1967 is a standard for where to store information that proxy contracts need to execute. Both the UUPS (Universal Upgradeable Proxy Standard) and the Transparent...

Last updated onOct 22, 2025
Read Article

12 min read

The staking algorithm of SushiSwap MasterChef and Synthetix

The staking algorithm of SushiSwap MasterChef and Synthetix The MasterChef and Synthetix staking algorithms distribute a fixed reward pool among stakers according to their time-weighted contributions...

Last updated onOct 29, 2025
Read Article