## BlockNum Proof of Consensus : Consensus Theorem

Having established the principles of the BlockNum blockchain with respect to network components, network component communications based on SIP protocol and the overall transactional ecosystem and sequencing, the remaining component to be described in more detail is Proof of Consensus (PoV) which is the underlying science behind how the Super Nodes reach consensus on a transaction i.e. whether the transaction will occur or will it fail.

The term “concept of consensus” was introduced in 1937 by Archie Blake related in the future to the “Blake Canonical Form. Some 20 years later, it was rediscovered by Quine and was then coined with the term 'consensus'. In mathematical logic, Boolean algebra is the branch of algebra (mathematics portion in which letters and other symbols used to represent numbers and quantities in formulae). Values of the variables are the truth. Values true and false, are more often refereed as 1 and 0.

The BlockNum Proof-of-Consensus relies on the main principle and operations of the Boolean algebra such as the conjunction and denoted as disjunction or denoted and the negation. Over the years Boolean algebra has been a key element in the development of digital electronic circuit boards and provided the foundation for modern programming languages.

Efficient implementation of Boolean functions is a fundamental element in the design of a combination of achieving BlockNum blockchain distributed PoC, by using the Consensus Theorem with the nodes.

In simple

#### terms ...

BlockNum uses principles of Consensus Theorem to allow the Super Nodes to essentially “vote” on whether a transaction is “True” (i.e. that the transaction can proceed) or “False” (i.e. that the transaction should fail).

).  As the Super Node verification and voting proceeds sequentially and since a given  Super Node in a transaction does have voting information from previous nodes on the voting string in the SIP header for a transaction, a mechanism had to be developed to ensure that this voting information was not available to that Super Node in any meaningful way.

In order to accomplish this, when an SBC (the Session Border Controller), establishes the initial SIP protocol, the protocol contains a binary string of 1024 in length. It is this string which stores in sequence, the voting outcome of the Super Nodes. It further establishes randomly by a given position in the string, whether a “1” or “0” represents “True” or “False” and this information is only known by the SBC.

As the transaction passes to a specific Super Node, that Super Node is given the information as to whether a “1” or “0” represents “True” or “False” and “votes” accordingly.

Therefore as a transaction progresses through the Super Node consensus process, the string evolves and even though the previous string results are available to a Super Node, the Node would have no way of knowing what those votes actually represented.

As such, Super Node 6 might see a string showing (0 representing simply a standard lead digit):

011111

But the Super Node would not be able to interpret the data without knowing which digit represented “True” or “False” by position.

When the SBC does determine that there have been sufficient Super Nodes queried to likely determine an outcome, it provides to each Super Node the checksum information required to solve the Consensus Theorem algebraic equation and determine whether consensus has been achieved and within the BlockNum consensus parameters (i.e. 51-79% odd numbered nodes and 20%+ even numbered nodes).

### BlockNum Proof of Consensus

Technical Aspects of Proof of Consensus

TOP