Why is the ‘Integrity’ property required in consensus protocols?

Formally a consensus protocol must satisfy the following three properties:


  • Eventually, every correct process decides some value.


  • If all the correct processes proposed the same value "v", then any correct process must decide "v".


  • Every correct process must agree on the same value.

"Termination" certifies the protocol is resilient to halting failures. "Agreement" deters any two correct processes from deciding on different values which would break consensus. But what about "Integrity", why is it required? If all correct processes propose "x" but then they all decide "y" (e.g. f(x) = y), is that a violation of consensus?

Counting a property of every sub-sets

Consider a array $ a$ of length $ n$ and $ a_i<n$ and a array of length $ n$ ,$ b=[0,0….(n$ $ times)]$ .Consider every sub-set of array $ a$ and denote it by $ s$ i need to find a number $ k$ with the largest number of occurrences or the most frequent one, If there are several options, choose the smallest one and then increase $ b[k]$ by one .I need to final $ b$ after considering all sub sets.

My idea is that ,I make a array $ val$ of length $ n$ where $ val[i]$ is number of times $ i$ occurred in array $ a$ .Consider that i am trying to find value for $ b[k]$ then i will create a array $ temp$ of length where $ temp[i]=min(val[k],val[i])$ .Then consider the value of $ val[k]$ to be $ m$ then in a subset element $ k$ can occur from $ 0$ to $ m$ times and using this i will find answer for all of its occurrences from $ 0$ to $ m$ which is a simple number of sub sets problem and finally i will have my answer.

But my algorithms complexity is bad as it quadratic or worse.Could anyone help me.

Is `iss` property in JWT tokens redundant?

I’m reading up on some OpenID Connect documentation trying to get my head around the protocol. I came across the issuer property that is common in the JWT tokens. How come this is required if we should always check the signature of the token against the expected endpoint?

I understand that one can validate against either a symmetric or asymmetric hash, but validation is expected either way.

Have I missed an important feature of the JWT?

Is there a way to discern if the magic of an item is a “trap” or a “property” of the item?

To put things into context:

We just entered the final room of a dungeon and we found some magic items strewn about in the room and some others inside a tomb. Our sorcerer used Detect Magic to know if any of the items was magic, and indeed they were, but we were fearful that they may have any protective enchantment to harm us when we tried to take them, and we couldn’t use Identify since we didn’t have the materials to do so. We discussed the matter with the DM, and by reading the description on both the Spellcraft ability and Detect Magic, he said that there shouldn’t be any way to differentiate both.

Is he right?

P.S.: I know that in the end, what the DM says, goes even if it’s not in the rules, I’m just curious if we were proceeding correctly from a technical standpoint.

Are light hammers broken/underpowered, and would adding the finesse property fix this?

When playing RAW, the only simple melee weapon with the finesse property is the dagger (PHB page 149). Most other thrown weapons of this type (hand axe, javelin, and spear) all do 1d6 damage with a secondary property thrown in — hand axe is light, javelin has extended range, and spear is versatile. This makes the light hammer — 1d4, light, thrown — inferior to these other thrown weapons in damage, and short of the dagger in its lack of finesse. As written, I can’t see why anyone would choose it. Is this broken?

People elsewhere have discussed increasing light hammer damage to 1d6 as a possible homebrew fix. The typical objection I’ve seen is its potential for use against monsters vulnerable to bludgeoning attacks (e.g. skeletons). I am willing to concede this argument, though to me, the RAW light hammer still feels imbalanced vs. hand axe — most of the time, damage type just doesn’t matter.

The historically-appropriate change might be some kind of attack/damage bonus when hammers are used against solid armor types (breastplate, half plate, or full plate), but for this change to be meaningful you’d have to do the same for mace, war hammer, and maul — and none of those weapons need it.

My thought: could we instead assign it an additional weapon property to compensate for the lesser damage (perhaps as a race feature, if not for everyone)?

For characters of dwarven (and perhaps forest gnome?) ancestry, for example, it seems more race-appropriate to use light hammers in place of daggers, and if they were a finesse weapon, dexterity-based characters might do so. Is there anything specific to bludgeoning damage that would make this a bad idea? Dwarven rogues would thank you if it were done.

Number of graphs that satisfies the property that edge weight is maximum of node values on which the edge is incident

I have an undirected weighted graph without multi edges. All the edge weights are whole numbers and known. I want to know in how many ways node values(node values are also whole numbers) can be assigned to the nodes such that the graph satisfies the condition that for every edge its edge weight is exactly equal to maximum of two node values this edge is incident on.

Difficulty in understand the proof of the lemma : “Matroids exhibit the optimal-substructure property”

I was going through the text "Introduction to Algorithms" by Cormen et. al. where I came across a lemma in which I could not understand a vital step in the proof. Before going into the lemma I give a brief description of the possible prerequisites for the lemma.

Let $ M=(S,\ell)$ be a matroid where $ S$ is the ground set and $ \ell$ is the family of subsets of $ S$ called the independent subsets of $ S$ .

Let us have an algorithm which finds an optimal subset of $ M$ using greedy method as:


$ 1\quad A\leftarrow\phi$

$ 2\quad \text{sort $ S[M]$ into monotonically decreasing order by weight $ w$ }$

$ 3\quad \text{for each $ x\in S[M]$ , taken in monotonically decreasing order by weight $ w(x)$ }$

$ 4\quad\quad \text{do if $ A\cup\{x\} \in \ell[M]$ }$

$ 5\quad\quad\quad\text{then $ A\leftarrow A\cup \{x\}$ }$

$ 6\quad \text{return $ A$ }$

I was having a problem in understanding a step in the proof of the lemma below.

Lemma: (Matroids exhibit the optimal-substructure property)

Let $ x$ be the first element of $ S$ chosen by $ GREEDY$ for the weighted matroid $ M = (S, \ell)$ . The remaining problem of finding a maximum-weight independent subset containing $ x$ reduces to finding a maximum-weight independent subset of the weighted matroid $ M’ = (S’, \ell’)$ , where

$ S’ = \{y\in S:\{x,y\}\in \ell\}$ ,

$ \ell’ = \{В \subseteq S – \{x\} : В \cup \{x\} \in \ell\}$ ,

and the weight function for $ M’$ is the weight function for $ M$ , restricted to $ S’$ . (We call $ M’$ the contraction of $ M$ by the element $ x$ .)


  1. If $ A$ is any maximum-weight independent subset of $ M$ containing $ x$ , then $ A’ = A — \{x\}$ is an independent subset of $ M’$ .

  2. Conversely, any independent subsubset $ A’$ of $ M’$ yields an independent subset $ A = A’\cup\{x\}$ of $ M$ .

  3. We have in both cases $ w(A) = w(A’) + w(x)$ .

  4. Since we have in both cases that $ w(A) = w(A’) + w(x)$ , a maximum-weight solution in $ M$ containing $ x$ yields a maximum-weight solution in $ M’$ , and vice versa.

I could understand $ (1),(2),(3)$ . But I could not get how the line $ (4)$ was arrived in the proof from $ (1),(2),(3)$ . especially the part in bold-italics. Could anyone please make it clear to me.