user41513: Two main properties of a consensus are "Liveness" and "Safety".
What are the exact and precised definition of "Liveness" and "Safety" properties in a consensus ?
Are the following definitions correct?

Safety: Achieving an agreement on a single state by all participants ?
Liveness: Possibility of updating this state with keeping the agreement ?


user45458: Safety: never achieving agreement on a state when nodes have not actually agreed on that given state, provided the assumptions of the paper hold (read the wiki here).
Liveness: consensus cannot stall, even in case of a tie, algo must always make progress (read the wiki here).

user85: Safety: Any transaction deemed final by one properly-operating node will eventually be deemed final by every properly-operating node. No two transactions ever deemed final by two properly-operating nodes will ever conflict.
Liveness: So long as there is always at least one transaction suitable for inclusion that has not been deemed final by any properly-operating nodes, the set of transactions deemed final by at least one properly-operating node will increase in number.
Note that these are very, very minimal definitions and generally not sufficient for realistic systems. Also, for some systems (where a transaction can produce different results depending on the context in which it executes), you have to understand "transaction" to mean the results of executing the transaction.

41513: <p>Two main properties of a consensus are "<strong>Liveness</strong>" and "<strong>Safety</strong>".</p>

<p>What are the exact and precised definition of "<strong>Liveness</strong>" and "<strong>Safety</strong>" properties in a consensus ?</p>

<p>Are the following definitions correct?</p>

<ul>
<li><p><strong>Safety:</strong> Achieving an agreement on a single state by all participants ?</p></li>
<li><p><strong>Liveness:</strong> Possibility of updating this state with keeping the agreement ?</p></li>
</ul>
 45458: <p>Safety: never achieving agreement on a state when nodes have not actually agreed on that given state, provided the assumptions of the paper hold (<a href="https://en.wikipedia.org/wiki/Thread_safety" rel="nofollow noreferrer">read the wiki here</a>).</p>

<p>Liveness: consensus cannot stall, even in case of a tie, algo must always make progress (<a href="https://en.wikipedia.org/wiki/Liveness" rel="nofollow noreferrer">read the wiki here</a>).</p>
 85: <p><strong>Safety</strong>: Any transaction deemed final by one properly-operating node will eventually be deemed final by every properly-operating node. No two transactions ever deemed final by two properly-operating nodes will ever conflict.</p>

<p><strong>Liveness</strong>: So long as there is always at least one transaction suitable for inclusion that has not been deemed final by any properly-operating nodes, the set of transactions deemed final by at least one properly-operating node will increase in number.</p>

<p>Note that these are very, very minimal definitions and generally not sufficient for realistic systems. Also, for some systems (where a transaction can produce different results depending on the context in which it executes), you have to understand "transaction" to mean the results of executing the transaction.</p>
