Corrigé X-ENS 2025 Informatique A MP — Partie V (Q21 à Q26) : Formules logiques sur les caractères : clauses et forme normale disjonctive
Sujet officiel du concours X-ENS, session 2025, épreuve Informatique A MP. Corrigé rédigé par Ibrahim Alame.
Sujet officiel (PDF, site du concours)
Énoncé
Les formules sont définies par , avec , et ; est la disjonction vide, la conjonction vide. Taille : , et une conjonction ou une disjonction de formules a pour taille .
Un modèle déterministe est un : si , une conjonction est satisfaite si toutes ses composantes le sont, une disjonction si l'une d'elles l'est. Un modèle probabiliste est un , et
Une clause est une conjonction de formules atomiques portant sur des caractères deux à deux distincts ; . Les modèles sont codés par des tableaux de valeurs ou distributions (mesures de la partie I), et les formules par le type suivant, les listes de valeurs étant sans doublons :
type formule =
| Feuille of caractere * valeur list
| Conjonction of formule list
| Disjonction of formule list
Q21. Montrer que « pour tout , » équivaut à « pour tout , » ; on note alors .
Q22. Complexité, en fonction de , et , du calcul naïf de selon la définition (décrire l'algorithme assez pour justifier l'analyse).
Q23. Pour une clause , décrire un calcul de de complexité ne dépendant que de et ; correction et complexité.
Q24. Pour deux clauses et , montrer que est équivalente à une clause, notée .
Q25. Montrer que toute formule est équivalente à une disjonction de clauses ().
Q26. Pour une formule quelconque, décrire un calcul de de complexité (éventuellement non polynomiale) ne dépendant que de et .
Corrigé
Notons et la mesure sur définie par . C'est une loi de probabilité (la loi produit) : sa masse vaut . Par définition, . Dans le code, le type formule masque le constructeur Feuille des arbres : Feuille désigne ici une formule atomique.
Q21. () Si et ont les mêmes modèles déterministes, , et les deux sommes portent sur le même ensemble avec les mêmes termes : pour tout .
() Par contraposée, supposons qu'un satisfasse l'une des formules et pas l'autre, disons et . Prenons le modèle probabiliste des diracs : vaut si et sinon. Donc (car ) et (car ) : les probabilités diffèrent. En somme, un modèle déterministe est un modèle probabiliste fait de diracs, ce qui rend la seconde propriété au moins aussi forte que la première.
Q22. L'algorithme naïf énumère tous les (récursion qui remplit un tableau v case par case, ou compteur « odomètre »), teste par une fonction récursive, et, si le test réussit, ajoute au total :
let rec satisfait (v : valeur array) (f : formule) : bool =
match f with
| Feuille (i, vs) -> List.mem v.(i) vs
| Conjonction fs -> List.for_all (satisfait v) fs
| Disjonction fs -> List.exists (satisfait v) fs
- Nombre de modèles : (avec égalité si tous les ont éléments). Leur énumération récursive visite au plus appels, en chacun hors des feuilles.
- Test : par récurrence sur ,
satisfaitcoûte : un atome coûte (List.mem), et une conjonction ou disjonction de formules coûte plus la somme des coûts des , soit . - Produit : multiplications, chaque étant lu par
proba_dedans une liste d'au plus couples : (ou si l'on a d'abord converti les en tableaux, pour une fois pour toutes).
Total : , borne atteinte quand tous les ont éléments, que chaque est uniforme et que est satisfaite partout après évaluation complète (par exemple une conjonction d'atomes ). La complexité est exponentielle en , même pour une formule minuscule : c'est ce que la suite évite. (Programme exécuté : il sert de référence aux tests de Q26.)
Q23. Soit , les deux à deux distincts, et . Alors est le produit cartésien avec et pour : c'est ici que sert l'hypothèse de caractères distincts. La somme d'un produit sur un produit cartésien se factorise :
100 % gratuit
La suite du corrigé est sur Adloun
Le corrigé rédigé en entier, question par question, et le tuteur pour poser des questions sur ce sujet.
Voir le corrigé complet, gratuitementInscription gratuite en 30 secondes (e-mail, nom d'utilisateur, mot de passe, classe ou profil), sans carte bancaire : arrivée directe sur le corrigé.