# Blockchain Difficulty Algorithms - Part 2: Mathematics

by Ryan Lucchese

2/14/2023

3 minute read

Tags: Blockchain, Crypto, Energi, Math

In Part 1 of this series, we described the basic ideas of what a difficulty algorithm is and why we need one to help us control block times in a decentralized network. In this post I will formalize some of the mathematics. The definitions presented here will form the basis for the rest of this series on difficulty algorithms, but feel free to skip ahead if you don't need the deep dive.
Definitions
Difficulty Function
First, let's define the difficulty algorithm itself. A difficulty...

# Blockchain Difficulty Algorithms - Part 1: Introduction

by Ryan Lucchese

2/14/2023

3 minute read

Tags: Blockchain, Crypto, Energi

Blockchain difficulty algorithms have been the subject of much research and a lot of incremental improvements. After many incremental improvements there has been a significant leap forward which is unlikely to be surpassed any time soon. At Energi, I created a difficulty algorithm that outperforms every other algorithm in the industry, using PID control. In this series of posts I plan to cover difficulty algorithms in depth, discuss the motivation and technical details of Energi's difficulty...