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]]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to