What does plus '+' operator mean between two propositions in Coq

Viewed 68

I am struggling with the plus operator between two propositions (maybe types) in Coq. I already could figure out this is something like "or" (maybe "xor") and I think it says that something is decidable but I cannot understand the complete meaning of it, and where does this sign come from (in classical mathematics).

P. S. Of course I already googled and researched but couldn't find the complete sophisticated answer I want.

1 Answers

That's the sum datatype, where A + B is basically A or B. The main difference with A \/ B is that it lives in Type, so it has computational content. That is to say, given A \/ B you cannot produce a boolean such that if A then true else false.

Another way to see it is that for A B : Prop, A + B -> A \/ B holds, but not the converse.

Prop is a special, impredicative sort in Coq; I recommend reading the manual about it.

Related