Outils pour utilisateurs

Outils du site


boardz:design:result

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
boardz:design:result [2020/02/22 20:05]
admin [La classe Résultat]
boardz:design:result [2020/04/07 11:07] (Version actuelle)
Ligne 22: Ligne 22:
 Syntaxe : %R1 + %R2 Syntaxe : %R1 + %R2
  
 +   * Null - * ou * - Null : *
    * Scalaire + Scalaire : Résultat scalaire de l'​addition    * Scalaire + Scalaire : Résultat scalaire de l'​addition
    * Scalaire + Assoc : toutes les valeurs de l'​association additionnée du scalaire    * Scalaire + Assoc : toutes les valeurs de l'​association additionnée du scalaire
Ligne 36: Ligne 37:
 Syntaxe : %R1 - %R2 Syntaxe : %R1 - %R2
  
 +   * Null - * ou * - Null : *
    * Scalaire - Scalaire : Résultat scalaire de la soustraction    * Scalaire - Scalaire : Résultat scalaire de la soustraction
    * Scalaire - Assoc : toutes les valeurs de l'​association soustraites du scalaire    * Scalaire - Assoc : toutes les valeurs de l'​association soustraites du scalaire
Ligne 50: Ligne 52:
 Syntaxe : %R1 * %R2 Syntaxe : %R1 * %R2
  
 +   * Null - * ou * - Null : Null
    * Scalaire * Scalaire : Résultat scalaire du produit    * Scalaire * Scalaire : Résultat scalaire du produit
    * Scalaire * Assoc : toutes les valeurs de l'​association multipliées par le scalaire    * Scalaire * Assoc : toutes les valeurs de l'​association multipliées par le scalaire
    * Assoc * Scalaire : toutes les valeurs de l'​association multipliées par le scalaire    * Assoc * Scalaire : toutes les valeurs de l'​association multipliées par le scalaire
    * Assoc * Assoc : produit algébrique de toutes les valeurs portant la même clef. Les clefs résultantes sont l'​intersection des clefs des opérandes.    * Assoc * Assoc : produit algébrique de toutes les valeurs portant la même clef. Les clefs résultantes sont l'​intersection des clefs des opérandes.
-   * Scalaire * matrice ​: extension de Scalaire * Assoc +   * Scalaire * Matrice ​: extension de Scalaire * Assoc 
-   ​* ​matrice ​* Scalaire : extension de Assoc * scalaire +   ​* ​Matrice ​* Scalaire : extension de Assoc * scalaire 
-   ​* ​matrice ​assoc : Réduction à Assoc * scalaire pour les clefs identiques de première dimension. +   ​* ​Matrice ​Assoc : Réduction à Assoc * scalaire pour les clefs identiques de première dimension. 
-   ​* ​assoc matrice ​: Réduction à scalaire * Assoc pour les clefs identiques de première dimension +   ​* ​Assoc Matrice ​: Réduction à scalaire * Assoc pour les clefs identiques de première dimension 
-   ​* ​matrice ​matrice ​: Réduction à Assoc * Assoc pour les clefs identiques de première dimension. Intersection des clefs manquantes.+   ​* ​Matrice ​Matrice ​: Réduction à Assoc * Assoc pour les clefs identiques de première dimension. Intersection des clefs manquantes. 
 + 
 +=== Division === 
 + 
 +Syntaxe : %R1 / %R2 
 + 
 +   * Null - * ou * - Null : Null 
 +   * Scalaire / Scalaire : Résultat scalaire de la division 
 +   * Scalaire / Assoc : l'​association des divisions du scalaire par les valeurs de l'​association 
 +   * Assoc / Scalaire : toutes les valeurs de l'​association moins la valeur du scalaire 
 +   * Assoc / Assoc : division algébrique de toutes les valeurs portant la même clef. Les celfs résultantes sont l'​intersection des clefs des deux résultats. 
 +   * Scalaire / Matrice : extension de Scalaire / Assoc 
 +   * Matrice / Scalaire : extension de Assoc / scalaire 
 +   * Matrice / Assoc : Réduction à Assoc / scalaire pour les clefs identiques de première dimension. 
 +   * Assoc / Matrice : Réduction à scalaire / Assoc pour les clefs identiques de première dimension 
 +   * Matrice / Matrice : Réduction à Assoc / Assoc pour les clefs identiques de première dimension. Union des clefs manquantes. 
 + 
 +=== Maximum (opérateur binaire) === 
 + 
 +Syntaxe : op1 M op2 
 + 
 +Cet opérateur calcule le maximum (ou les maximums locaux) entre deux résultats. 
 + 
 +   * Scalaire M Scalaire : Renvoie le maximum scalaire des deux valeurs 
 +   * Scalaire M Assoc : Renvoie l'​association avec application du maximum scalaire sur chaque valeur 
 +   * Assoc M Scalaire : Renvoie l'​association avec application du maximum scalaire sur chaque valeur 
 +   * Assoc M Assoc : Renvoie les maximums "clef à clef". Les clefs manquantes sont remplies avec la valeur disponible 
 +   * Matrice M Matrice : Maximums locaux comme extension du cas précédent 
 +   * Matrice M Assoc : Réduction à Assoc / scalaire pour les clefs identiques de première dimension. 
 +   * Assoc M Matrice : Réduction à scalaire / Assoc pour les clefs identiques de première dimension 
 + 
 +=== Minimum (opérateur binaire) === 
 + 
 +Syntaxe : op1 m op2 
 + 
 +Cet opérateur calcule le minimum (ou les minimums locaux) entre deux résultats. 
 + 
 +   * Scalaire m Scalaire : Renvoie le minimum scalaire des deux valeurs 
 +   * Scalaire m Assoc : Renvoie l'​association avec application du minimum scalaire sur chaque valeur 
 +   * Assoc m Scalaire : Renvoie l'​association avec application du minimum scalaire sur chaque valeur 
 +   * Assoc m Assoc : Renvoie les minimums "clef à clef". Les clefs manquantes sont remplies avec la valeur disponible 
 +   * Matrice m Matrice : Minimums locaux comme extension du cas précédent 
 +   * Matrice m Assoc : Réduction à Assoc / scalaire pour les clefs identiques de première dimension. 
 +   * Assoc m Matrice : Réduction à scalaire / Assoc pour les clefs identiques de première dimension 
 + 
 +=== Filtrage ​ === 
 + 
 +Syntaxe : op1 ^ op2 
 +Conditions :  
 +   * op1 et op2 ne peuvent être scalaires (ni l'un ni l'​autre) 
 +   * Les dimensions de op2 doivent être incluses (dans le même ordre) dans les dimensions de op1. 
 +   * Si l'​arité des deux opérandes est identique, alors seules les clefs de op2 sont considérées pour l'​opération. 
 +   * Si op2 est d'​arité plus grande que op1, alors les sous-dimensions supplémentaires de op2 sont ignorées. 
 + 
 +Cet opérateur filtre le premier opérande sur la base des clefs disponibles dans le second opérante. Le filtrage s'​effectue par arité descendante.  
 + 
 + 
 +====Opérations unaires==== 
 + 
 +Ces opérateurs peuvent avoir un effet sur l'​arité et le type de structure. Ils peuvent éventuellement réduire l'​arité initiale 
 + 
 +=== Maximum unaire === 
 + 
 +Le maximum unaire calcule le maximum global de la structure sur la dimension la plus profonde, et réduit la structure à l'​arité inférieure d'une unité. Une matrice d'​arité deux devient une association et une association devient un scalaire. 
 + 
 +Syntaxe : MAX(op1) 
 + 
 +   * Scalaire : renvoie la même valeur 
 +   * Assoc : renvoie le scalaire maximum des valeurs de l'​association 
 +   * Matrice : renvoie la structure d'​arité inférieure,​ la dimension inférieure réduite au maximum local 
 + 
 +Exemple sur les matrices :  
 + 
 +soit une matrice d'​arité 3 : 
 + 
 +    [catégorie de cours][cours][utilisateur] => valeur 
 + 
 +L'​exécution de MAX sur la matrice donnera la matrice indexée sur  
 + 
 +   ​[Catégorie de cours][cours] => MAX(valeur(utilisateur)) 
 + 
 +=== Minimum unaire === 
 + 
 +Comme pour le maximum unaire mais avec le minimum local. 
 + 
 +=== Moyenne unaire === 
 + 
 +Comme pour le maximum unaire mais avec la moyenne. 
 + 
 +=== Cardinalité === 
 + 
 +L'​opérateur de cardinalité extrait la cardinalité de la dernière dimension disponible dans la structure.  
 + 
 +Syntaxe : CARD(op1) 
 + 
 +   * Scalaire : donne le scalaire 1 
 +   * Association : donne un scalaire donnant le nombre d'​éléments de l'​association 
 +   * Matrice : donne une matrice de rang inférieur (une association pour la matrice d'​arité 2) donnant les nombres d'​éléments de la dernière dimension originale. 
 + 
 +Exemple : 
 + 
 +soit une matrice d'​arité 3 : 
 + 
 +    [Catégorie de cours][cours][utilisateur] => valeur 
 + 
 +de dimensions :  
 + 
 +    [coursecatid,​ courseid, userid, unknown] 
 + 
 +L'​exécution de MAX sur la matrice donnera la matrice indexée sur  
 + 
 +   ​[Catégorie de cours][cours] => COUNT(utilisateur) 
 + 
 +de dimensions : 
 + 
 +    [coursecatid,​ courseid, unknown] 
 + 
 +=== Compression temporelle ===
  
 [[:​start|Retour au sommaire]] [[:​start|Retour au sommaire]]
boardz/design/result.1582398326.txt.gz · Dernière modification: 2020/04/07 11:07 (modification externe)