Hi Timothy,
You raise a good point. > 1. Should the OR be understood as "normal" disjunction, exclusive > disjunction, or none of the two? Has there been any discussion or thought on > this? We have discussed whether this is an “Exclusive OR” or “Disjunctive OR” and concluded that is was “Disjunctive” in the sense that you could take one license, the other license or keep the original disjunctive set (i.e.: you didn’t have to pick one to the exclusion of the other). > 2. The specification mentions the equivalence with commutation, but nothing > about transitivity or distributivity. Is there any deeper meaning to this? I don’t recall any discussion on transitivity or distributivity. I completely agree with your analysis the “Normal” distributivity leads to erroneous results and should not be applied. Perhaps we should make this more explicit in the spec either stating how transitivity applies or state that transitivity doesn’t apply. One caveat on the above – it has been a while since I’ve been involved in license discussions and my memory has been known to be a bit faulty – if others recall more or different discussions, please chime in. Gary From: [email protected] <[email protected]> On Behalf Of Timothy Gillespie Sent: Friday, January 20, 2023 6:39 AM To: [email protected] Subject: [spdx-tech] Question about License Expression Disjunctions Hi everyone, I have two questions/remarks about the compound license expressions as defined in SPDX 2.3 Annex D.4. The OR is referred to as the "Disjunctive OR operator". However, as we have a choice and would not pick two or more of such licenses, it seems to me that it is not a "normal" disjunction but an exclusive one. I find this distinction interesting for evaluating license equivalence regarding distributivity. If the OR is to be understood as a "normal" disjunction, then that would mean both distributivities apply (AND over OR and OR over AND). If the OR is to be understood as an exclusive disjunction, then that would mean only one distributivity would apply. (AND over OR). For example: BSD-3-Clause OR (MIT AND Apache-2.0) ≡ (BSD-3-Clause OR Apache-2.0) AND (BSD-3-Clause OR MIT) (True only for "normal" disjunction) BSD-3-Clause AND (MIT OR Apache-2.0) ≡ (BSD-3-Clause AND Apache-2.0) OR (BSD-3-Clause AND MIT) (True for "normal" and exclusive disjunction) To me, the assumption of an exclusive disjunction seems to make more sense. Questions: 1. Should the OR be understood as "normal" disjunction, exclusive disjunction, or none of the two? Has there been any discussion or thought on this? 2. The specification mentions the equivalence with commutation, but nothing about transitivity or distributivity. Is there any deeper meaning to this? Best Regards, Timothy -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#4931): https://lists.spdx.org/g/Spdx-tech/message/4931 Mute This Topic: https://lists.spdx.org/mt/96401230/21656 Group Owner: [email protected] Unsubscribe: https://lists.spdx.org/g/Spdx-tech/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
