How is the problem set to be solved by Proof of Work?

The documentation says that “For a miner to become the leader for an epoch, they have to produce a Key block containing a valid Proof of Work solution” - but who defines the problem that needs to be solved? As far as I understand, the problem is to find a cycle in a graph - how do the miners know what is the graph where they need to find that cycle? I probably miss something obvious, but couldn’t find it so far…

@michalzee @tromp @sergiimaksiuta.chain

The graph is determined by the header of the Key block to be solved.
In particular, the siphash keys for generating graph edges are obtained
by hashing the header up to and including the nonce.

2 Likes

Details are here: https://github.com/aeternity/protocol/blob/master/consensus/consensus.md#proof-of-work-1

2 Likes