Y a-t-il une notation pour la logique et / ou des lots d'éléments?
Vous pouvez ajouter beaucoup de choses en utilisant la notation de sommation $$\sum_{n=1}^5 n = 15$$
Existe-t-il un opérateur similaire pour «et» et «ou» logiques?
j'ai considéré $\exists$/$\forall$, mais cela ne me permet pas de spécifier facilement comment déterminer la réponse dans certains cas.
Réponses
Utilisez \ bigvee et \ bigwedge, $$ \bigvee_{i=1}^{100} X_i $$ et $$ \bigwedge_{i \in I} X_i \text{,} $$ respectivement.
Voir aussi Quelle est la signification de$\bigvee$ (bigvee) opérateur
Sachez que ceux-ci sont également utilisés pour les rencontres et les jointures (théorie du treillis). Selon votre contexte, il pourrait être judicieux d'introduire explicitement cette notation.
Fait intéressant, vous pouvez assez facilement utiliser une déclaration comme $$(\forall i\in I)(\exists a_i\in A_i)$$ pour obtenir des instructions répétées "il existe" et de la même manière, vous pouvez utiliser $$(\forall i\in I)(\forall a_i \in A_i)$$pour obtenir des déclarations répétées "pour tous". Vous auriez juste besoin de définir l'ensemble$I$ et les décors $A_i$. Notez que chaque$a_i$ n'est pas nécessairement unique, et dans la deuxième déclaration, $a_i$ est unique uniquement lorsque $|A_i|=1$.
Vous avez mentionné dans un commentaire que cela s'est produit dans un contexte algorithmique. En termes de programmation, l'expression générale pour cela est reduce(operation, iterable)
(bien sûr, cela implique que vous avez affaire à un opérateur binaire associatif; reduce(mean, iterable)
ne va pas obtenir la moyenne de l'itérable), par exemple reduce(or, (f(_) for _ in range(k)))
. Il y a aussi any(f(_) for _ in range(k))
. Ce sont la syntaxe Python, mais si vous utilisez du code psuedo, cela devrait être clair même pour les personnes CS qui ne sont pas familières avec Python. En termes de logique mathématique, ce serait$\exists n:f(n)$.