Aller au contenu
EN FR

Polyadic Map

Statut documentaire : architecture — voir Maturité et preuves.

Un polyadic map est une structure Runtime de premier ordre qui aligne les positions de rôles entre structures conceptuelles polyadiques.

Ce n'est pas seulement une documentation disant « le rôle A correspond au rôle B ». Le moteur transporte les polyadic maps dans les contraintes de sous-typage, les relations logiques, le matching, l'unification et les projections structurelles.

Pourquoi les mappings sont nécessaires

Les concepts polyadiques sont sensibles aux rôles. Deux structures peuvent être compatibles sémantiquement même si l'ordre interne des rôles diffère ou si un concept spécialise un autre via une projection structurelle différente.

Attendu : Relation(subject, object, time)
Réel    : SpecializedRelation(actor, at, target, ...)

PolyadicMap :
  subject -> actor
  object  -> target
  time    -> at

Le mapping permet au Runtime de comparer ou projeter les structures sans prétendre qu'une égalité de position brute suffit.

Où le Runtime l'utilise

Les sources moteur actuelles montrent des polyadic maps dans :

  • les tests sous-type/sur-type ;
  • l'implication et la comparabilité ;
  • l'évaluation des contraintes ;
  • le pattern matching et la projection des kinds hérités ;
  • la structure des relations logiques ;
  • les chemins d'unification, mapping et composition structurelle.

Les relations logiques réservent une position dédiée au polyadic map avant la source, la cible et le contexte. L'alignement des rôles fait donc partie de la relation elle-même.

Mapping inféré ou explicite

Le Runtime peut dériver certains mappings lorsque la structure des types/rôles fournit assez d'information, mais la documentation applicative ne doit jamais utiliser l'ordre des slots comme substitut à la sémantique. Quand la correspondance des rôles est importante ou ambiguë, rendez le sens attendu explicite.

Règle de conception

Considérez un polyadic map comme une transformation sémantique entre espaces de rôles. Il doit préserver le sens des rôles lors d'une spécialisation, comparaison ou projection, et non simplement réordonner des valeurs.