Nous avons vu jusqu'à présent des lois internes sur un ensemble (applications de E × E dans E) et des lois externes (applications de F × E dans E). On peut tout aussi bien concevoir des applications où le 'résultat' (l'image d'un couple) n'est pas dans un ensemble composant le produit cartésien. Par exemple, le produit 'scalaire' de deux vecteurs, qui n'est pas un vecteur mais un nombre! Il s'agit encore d'une opération, mais qui n'est évidemment pas 'interne' mais qu'on ne qualifie pas non plus d'externe, compte tenu du fait que cette appellation est déjà réservée.
En outre, toutes ces opérations sont 'binaires', c'est à dire que ce sont des applications dont l'ensemble de départ est un produit cartésien de deux ensembles.
Rien n'empêche évidemment de considérer des applications dont l'ensemble de départ est le produit cartésien de trois ensembles, nous parlerons alors 'applications 'ternaires'. Un exemple est le produit mixte de 3 vecteurs qui peut être défini comme le produit scalaire du premier par le produit vectoriel des deux autres.
Nous définissons donc maintenant la notion générale "d'opérateur" comme une application d'un produit cartésien fini quelconque à valeur dans un ensemble F quelconque.
P: E1×E2×...× En → F
P: (x1,x2,...,xn)  → P(x1,x2,...,xn)
Naturellement on peut utiliser diverses notations: Il importe donc de comprendre que toutes ces situations sont des cas particuliers 'd'opérateurs' au sens le plus général du terme.
Une notion importante est également celle 'd'arité'. L'arité d'un opérateur est le nombre de ces 'arguments', c'est à dire 2 pour une loi de composition interne ou un produit scalaire, 3 pour un produit mixte, etc.
Il y a bien sûr des opérateurs 'unaires' qui ne prennent qu'un seul argument comme l'application qui à x associe son opposé dans un groupe par exemple.
On peut si l'on veut étendre cette notion d'arité au cas du nombre 0. Les opérateurs d'arité 0 seraient dans ce cas des 'constantes'.

Quelques opérateurs du langage C

Le langage C est un standard des langages de programmation. S'inspirent de ce langage de nombreux autres comme des langages orientés objets (C++, C#, Java), ou des langages orientés programmation web (Javascript, PHP, Perl). Souvent les langages dérivés s'inspirent de la syntaxe du langage C, en particulier ils conservent les opérateurs et leur signification, avec toutefois de légères différences possibles de l'un à l'autre.
Table 1: Les principaux opérateurs arithmétiques
Opérateur Traduction Exemple Résultat
+ Addition x + y l'addition de x et y
- Soustraction x - y la soustraction de x et y
* Produit x * y la multiplication de x et y
/ Division x / y le quotient de x et y
% Reste x % y Reste de la division euclidienne de x par y
+ (unaire) Signe positif +x la valeur de x
- (unaire) Signe négatif -x l'opposé de x
Table 2: Les opérateurs relationnels (retournent une valeur logique V ou F)
Opérateur Traduction Exemple Résultat
< inférieur x < y 1 si x est inférieur à y
<= inférieur ou égal x <= y 1 si x est inférieur ou égal à y
> supérieur x > y 1 si x est supérieur à y
>= supérieur ou égal x >= y 1 si x est supérieur ou égal à y
== égalité x == y 1 si x est égal à y
!= non inégalité x != y 1 si x est différent de y

Table 3: Les opérateurs logiques
Opérateur Traduction Exemple Résultat
&& ET logique x && y 1 si x et y sont différents de 0
|| OU logique x || y 1 si x et/ou y sont différents de 0
! NON logique !x 1 si x est égal à 0. Dans tous les autres cas, 0 est renvoyé.
C'est volontairement que nous n'avons reproduit ici aucun des opérateurs dits 'd'affectation' ou 'd'affectation combinés', qui correspondent plus à des manipulations de la mémoire, donc à des instructions de processeurs qu'à des opérations mathématiques. Leur place n'est pas ici.

Opérateurs du langage Python.

Table1 : Voici une table des opérateurs arithmétiques les plus courants

Opération Résultat
x + y somme de x et y
x - y différence de x et y
x * y produit de x et y
x / y quotient de x et y
x % y reste de x / y
- x x négatif
+ x x inchangé
abs( x ) valeur absolue ou magnitude de x
int( x ) conversion de x en entier
long( x ) conversion de x en entier long
float( x ) conversion de x en flottant
complex( re , im ) nombre complexe avec re en partie réelle et im en partie imaginaire. im vaut zéro par défaut.
c .conjugate() valeur conjuguée du nombre complexe c
divmod( x , y ) la paire ( x / y , x % y )
pow( x , y ) élévation de x à la puissance y
x ** y élévation de x à la puissance y
Table 2 : Et voici la table des opérateurs de comparaison usuels

Opérateur Opération
< strictement inférieur à
<= inférieur ou égal à
> strictement supérieur à
>= supérieur ou égal à
== égal à
!= n'est pas égal à
<> n'est pas égal à
Table 3 : Et voici une table des opérateurs logiques
Opération Résultat
x or y si x est faux, alors y , sinon x
x and y si x est faux, alors x , sinon y
not x si x est faux, alors 1 , sinon 0