Hi'.
J'ai un super mal de crâne aujourd'hui, du coup j'ai décidé de me ménager et de faire ce qu'il y avait de plus facile sur ma to-do list, c'est parti pour un nouvel article sur la logique !
Là je suis censé faire un résumé pour les retardataires mais bon sang... comment résumer quatre articles...
1) Si la pub' de la S5 existe alors si elle te rappelle le Magical et qu'elle ne montre rien de nouveau alors elle te déçoit.
Ouais Hasbro a balancé une vidéo pour annoncer l'arrivée de la S5, sans surprise ce printemps, et je devrais être "joie" à cette idée mais même l'animatic vu y a des mois en dévoilait plus. Et ils sont pas foutus de faire un clin d'oeil correct ("nothing could prepare her for what's to come")...
Cela dit, rappelons ce que sont les "variables" :
2) Si p alors si q et r alors s.
Les quatre lettres là ce sont des variables. On a "abstrait" le contenu et maintenant on veut savoir ce qui est vrai là-dedans. On va donc attribuer des valeurs de vérité :
3) <-.(\>
On ne va donc pas attribuer de valeurs de vérité sinon ça va vous faire peur (les valeurs pour quatre variables font 16 chiffres). Bon là en l'occurrence on a un avantage : la pub' de la S5 existe vraiment et elle ne montre effectivement rien de nouveau. On dira donc qu'elles sont vraies et on réduit tout ça à deux variables :
3a) Si T alors si p et T alors q.
3b) Si 1111 alors si 1100 et 1111 alors 1010.
Le "1" signifie vrai et le "0" signifie faux. On veut couvrir tous les cas de figure, c'est-à-dire quand "p" et "q" sont vrais, quand seul "p" est vrai, quand seul "q" est vrai, etc... ça fait quatre cas de figure, quatre chiffres, c'est un rappel pas l'explication complète donc pour le reste merci de retourner à l'article sur les valeurs de vérité.
Maintenant qu'on a nos variables et leurs valeurs de vérité, il ne nous reste plus qu'à réintroduire les "connecteurs" :
4) >( p >( ^( q r ) s ) )
J'ai remis les variables en gras pour vous faciliter la vie. Là on a trois connecteurs, deux fois ">" et une fois " ^ ", donc deux implications et une conjonction, ce sont nos "si... alors..." et notre "et". Ces connecteurs vont nous permettre de calculer à partir des valeurs de vérité :
4a) >( T >( ^( p T ) q ) )
4b) >( 1111 >( ^( 1100 1111 ) 1010 ) )
4c) >( 1111 >( 1100 1010 ) )
4d) >( 1111 1011 )
4e) 1011
Okay j'ai triché, je suis passé de quatre à deux variables (si la variable est toujours vraie c'est une constante...) mais l'idée est là, on sait désormais que notre exemple (1) vaut "1011" ou "tu es déçu du moment que tu es déçu". J'ai l'impression de m'être fait avoir là pour le coup...
J'avais promis pour cet article qu'on introduirait un nouveau connecteur, et sans doute le plus compliqué, tortueux et malade de toute la logique formelle. Ce connecteur est dans le titre. C'est le quantificateur. Et si vous êtes logicien vous devriez être en train de m'écrire des menaces de mort.
Ce connecteur est tellement basique qu'on ne le considère même pas comme tel, mais inversement il est tellement fondamental que ne pas en parler est suicidaire.
Qu'est-ce qu'il fait ?
C'est lui qui permet de "créer" des variables.
Ouais.
Sans quantificateur tu ne peux même pas travailler. Genre. Mais assez traîné, on veut sa définition. Et sa définition d'un connecteur, on l'a vu, c'est "symbole = valeur de vérité". Donc sa définition c'est :
[ ][ ] = 10
Comme dit, le quantificateur n'est pas considéré comme un connecteur, donc là la définition que je donne est "ad hoc". Mais l'idée c'est ça. Et comme à chaque fois, on va commencer par la valeur de vérité.
Déjà, contrairement aux autres connecteurs, on ne vous dit pas sur combien de variables porte le quantificateur. Un peu normal vu que c'est lui qui les crée. Cela dit, à strictement parler, il ne porte que sur une seule expression (le connecteur dominant) d'où une valeur de vérité à deux chiffres. J'ai choisi "10" et si vous savez lire les valeurs de vérité désormais ça signifie :
5) "Si l'expression est vraie alors le quantificateur est vrai ; si l'expression est fausse alors le quantificateur est faux."
Mais alors si on reprend notre exemple (1), sa valeur de vérité en (4e) c'est "1011". Elle est vraie ou fausse ? Aaaaah ! Impossible de décider ! On est foutus ! Des siècles de logique pour rien !
Non je déconne : si l'expression n'est pas toujours vraie alors elle est fausse. Cette phrase je suis obligé de vous la mettre en gras, et je vous la répète carrément : si ce n'est pas toujours vrai alors c'est faux. Et je vous le refais carrément en langage logique : >( ~(T) F ) Ce qui est toujours vrai, d'ailleurs.
Donc notre exemple (1) est faux. Ouais, pas de discussion, on n'entre même pas en matière : faux. "Mais dans tel cas il es-" non ta gueule : faux. La quantification est sans pitié, la nuance elle aime pas, c'est du manichéisme primaire.
Qu'en est-il du symbole ? Un connecteur est formé du symbole lui-même, genre ">" ou "~", et de parenthèses (le "contexte"). On a déjà dit que les parenthèses n'indiquaient pas le nombre de variables qu'elles contenaient mais dans l'absolu il n'y aura jamais qu'une expression dedans, donc en gros une seule variable, donc en gros ça c'est réglé.
Par contre le symbole lui-même, "[ ]" euh ça c'est pas normal. Ça c'est une autre série de parenthèses (des crochets en l'occurrence).
En fait, la quantification est formée de deux parties :
- le quantificateur
- le sous-quantificateur
Je ne sais plus si ce sont les bons termes (je pourrais ouvrir le bouquin à portée de bras qui y répond mais flemme) mais on utilisera ceux-là. De toute manière ça fait longtemps que j'ai abandonné les vrais termes techniques.
Le quantificateur est le "[ ]" de gauche. C'est là qu'on va lister toutes les variables qui apparaissent dans notre expression (notre formule logique). Le sous-quantificateur est le "[ ]" de droite. C'est là qu'on place ladite expression. En pratique ça donne :
6) [pqrs][ >( p >( ^( q r ) s ) ) ]
J'ai remis les variables en gras, pour vous aider. À gauche la liste de variables, à droite l'expression (la même qu'en (4) ). Et oui, si l'exemple (4) vaut 1011, l'exemple (6) vaut 0. Parce qu'on l'a dit, si ce n'est pas à 120% vrai, alors c'est faux. Biatch.
Pause.
Avec les variables, les valeurs de vérité, les connecteurs et maintenant les quantificateurs on a enfin l'arsenal complet pour raisonner logiquement.
Mais tout ça est, je le sais, abominablement difficile à comprendre. Alors maintenant on va arrêter d'introduire de nouvelles choses et on va se contenter de jouer avec ce qu'on a déjà.
Donc.
Disons que quelqu'un me dise "je suis passé chez Marc ce matin". Quelle est la valeur de vérité de ce truc ?
On décide de remplacer l'ensemble par une unique variable : ce sera "p". Notre premier réflexe sera donc d'écrire :
7) p
Quelle est la valeur de ce truc ? Bah on sait pas. C'est une variable. Ça peut être vrai ou faux. Vous pouvez faire confiance au type ou bien jouer à l'inquisition espagnole.
Mais là nous on est logiciens, et désormais les variables ont les quantifie : on les crée, on les introduit, on les annonce, on les peluches à poil ras ! Et là attention :
7a) [p][ p ]
C'est la même chose mais quantifié. La différence ? En (7) on disait "p". Ici on dit "Pour tout p, p." Quelle est la valeur de vérité de "p" ? C'est demander la valeur de vérité d'une variable. C'est variable... Voilà on a bien rigolé donc ouais, ça peut être vrai ou faux, "1" ou "0", donc 10. Et si ce peut être faux, la quantification dit que ce l'est :
7b) 0
Donc quand l'autre vous dit qu'il est passé chez Marc ce matin, il vous MENT ! Ou pas. En fait, ce qu'on est en train d'évaluer c'est si dire "je suis passé chez Marc ce matin" est vrai pour tout le monde, en tout endroit et à tout moment de l'univers (et au-delà). Et là surprenamment bah c'est pas très très très vrai.
Maintenant j'aimerais faire remarquer quelque chose. (7a) est toujours faux. Ce qui signifie que :
8) ≡( F [p][ p ] )
Ceci signifie que "le faux (F) équivaut à [p][ p ]". C'est ce qu'on vient de dire, (7a) est toujours faux.
Remarquez que l'exemple (8) est quantifié. La variable "p" a son quantificateur et... et il n'y a pas d'autre variable, donc pas besoin de placer une quantification vide.
Mais là la quantification elle est un peu violente ! Si ce n'est pas toujours vrai alors c'est faux... du coup c'est super dur d'avoir une quantification vraie ! Ça ressemblerait à quoi ?
8a) [p][ ≡( p p ) ]
Ceci se lit "pour tout p, p équivaut à p", autrement dit "un chat est un chat". La valeur de vérité de l'équivalence (le "≡") vaut 1001, check ! Si vous calculez, "≡( p p )" donne bien 1111, c'est toujours vrai donc (8a) vaut... 1 ! Woohoo !
Mine de rien là on a quelque chose qui sera vrai dans n'importe quel univers.
N'importe quel univers.
N'IMPORTE LEQUEL.
Vous voyez le chaos de Discord ? Eh ben même dans son chaos, (8a) est toujours vrai. Ou comme dirait Celestia, "mais s'il n'y a pas de règles comment tu pourrais les enfreindre ?" Le chaos a besoin d'ordre, l'ordre a besoin de chaos, aaah cette philosophie...
Bref ! Cela signifie que :
8b) ≡( T [p][ ≡( p p ) ] )
"Le vrai équivaut à blablabla..." bon okay vous ne voyez pas l'utilité...
Alors si je vous proposais de redéfinir la négation ? Imaginez qu'on soit dans un monde où la négation n'existe pas. Vala'. On a supprimé la négation. Cadence aimait pas que Shining dise non donc elle a balancé un sort et paf, le connecteur "~" s'est perdu dans les limbes.
Twilight est donc super-contente (parce que "paniquée" impliquerait une négation) et décide d'avoir un sort (parce qu' "apprendre" sous-entend une négation) pour que le monde soit positif. Et elle te sort ça :
9) [p][ ≡( ~(p) ≡( p [q][ q ] ) ) ]
Okay on ne s'affole pas ! Et on calcule tout ça dans l'ordre. Je vous rappelle que là on essaie de sauver- pardon, de "joie-les-fleufleurs" Equestria. Donc :
9a) [p][ ≡( ~(p) ≡( p F ) ) ]
9b) [p][ ≡( ~( 10 ) ≡( 10 00 ) ) }
9c) [p][ ≡( ~( 10 ) 01 ) ]
En (9a), on ne sait plus (parce que la négation n'existe plus) que [q][ q ] peut être remplacé par "F" (voir l'exemple (8) ). En (9b) on regarde les valeurs de vérité et on résout, en (9c), l'équivalence à droite. Le résultat ?
Mh...
Voyons voyons... on a une équivalence avec, à gauche, un symbole étrange, "~", et sa parenthèse... et à droite... une valeur de vérité...
C'est curieux comme ça me rappelle quelque chose.
Ouais, Twilight Sparkle vient de redéfinir la négation. Et oui, la logique permet de faire ça. Pas de chance Cadence ! Twilight a fait logique sup' et Shining va continuer à pouvoir refuser de porter des tutus roses.
Jusqu'à présent la définition des connecteurs on la présentait comme ça :
~( - ) = 01
Maintenant vous savez que le vrai langage c'est :
[p][ ≡( ~(p) ≡( p [q][ q ] ) ) ]
C'est la même chose, mais forcément la première forme est plus lisible que l'autre. L'autre est juste plus rigoureuse et complète.
Et oui, on peut faire pareil pour TOUS les connecteurs. La démarche est la même : une équivalence avec à gauche notre connecteur et à droite une expression dont la valeur de vérité correspond à ce qu'on veut. Et c'est comme ça qu'on fait les enfa- les connecteurs !
Ce qui signifie aussi que (8) et (8b) sont également des définitions, de "F" et "T" respectivement. Ouais on a défini le vrai et le faux en langage logique. Bon c'est pas très spectaculaire mais ça valait de le mentionner.
Je vous ai dit que les logiciens avaient une conception étrange de la récréation ? Ouais je sais ce qui précède était pas exactement la pause que vous auriez voulu mais eh. Vous savez quoi ?
Je viens de me rappeler que dans le tout premier article (sur les variables), on avait cité un passage de texte :
10) "Le rapport des frontières était arrivé quelques minutes à peine après le retour du souverain. Après avoir appris l’évasion, il venait maintenant de prendre connaissance de la débâcle dans l’Empire de Cristal." (Acylius, Dernier Sortilège, ch.14)
Ah ça date ! Un peu comme si ça faisait plus ou moins deux semaines.
Est-ce qu'on peut représenter ce colosse en langage logique désormais ?
Tout d'abord, cherchez les connecteurs.
Pas de "si... alors" ? Pas de "et" ? Pas même une petite négation visible ? C'est horrible ! Si on essaie de réécrire ça en langage logique (on dit "formaliser" siouplait) ça donnera juste une suite de variables ! Et si on a juste une suite de variables on pourra rien calculer !
Rassurez-vous, la science du langage est passée par là.
À minima, vous pouvez décider de tout relier par des conjonctions.
L'idée serait que le texte se contente de mettre côte-à-côte un tas de "phrases". Donc à chaque fois qu'on a deux "phrases", genre "p" et "q", on écrira :
10a) ^( p q )
Et si on a une troisième phrase, genre euh... euh... "r" ?
10b) ^( ^( p q ) r )
Et si on en avait quatre, comme en (10) ?
10c) ^( ^( ^( "Le rapport des frontières est arrivé" "le souverain est revenu" ) "Le souverain apprend l'évasion" ) "Le souverain prend connaissance de la débâcle" )
J'ai viré toutes les nuances surtout pour gagner de la place mais voilà, là on a déjà traduit en termes logiques notre paragraphe de texte. C'est complètement foireux mais on l'a fait.
Ou presque. Petit rappel : la quantification.
On a quatre variables ici, quatre "phrases" (les "propositions") qu'il nous faut introduire, donc quantifier. Ce qui va alourdir l'expression de 50% mais c'est nécessaire :
10d) [pqrs][ ^( ^( ^( p q ) r ) s ) ]
Et voilà, notre paragraphe du chapitre 14 de Sortilège, en termes logiques. Je vous mets l'expression elle-même en gras pour que vous arriviez à la retrouver. Petite larmichette pour l'accomplissement et on passe aux choses sérieuses.
Parce que le texte ne met pas les phrases côte-à-côte.
Vous voulez une preuve ? Très bien. Petit moment de logique de bac à sable : pour que le souverain apprenne la débâcle de blablabla, est-ce qu'il faut que le rapport soit arrivé ?
10e) Le rapport des frontières était arrivé (...) . (...) il [le souverain] venait maintenant de prendre connaissance de la débâcle dans l’Empire de Cristal.
C'est parce que le rapport des frontières arrive que le souverain apprend la débâcle. Ce n'était pas nécessaire, hein : même si le rapport n'était pas arrivé, machin aurait eu mille autres manières de le savoir. Mais le texte nous suggère qu'il y a implication :
10f) [pqrs][ >( ^( p q ) ^( r s ) ) ]
Autrement dit "Si le rapport des frontières était arrivé... alors le souverain venait de prendre connaissance..." le connecteur n'est pas visible mais il est bien présent, bien caché dans le fonctionnement interne du texte.
On pourrait continuer comme ça, à raffiner notre expression parce que bon à ce stade ce n'est toujours pas bien représentatif du fonctionnement du texte. Mais là on fait de la logique, je n'ai pas envie de m'enfoncer dans les considérations "linguistiques" ou textuelles.
Je ferai juste observer deux choses.
La première est que oui, ici dans le texte il est possible d'évaluer si le texte dit vrai. En l'occurrence l'implication doit être respectée : si le rapport est arrivé alors il y a intérêt à ce que le roi soit au courant. C'est un peu ce que nous dit le texte quand même, et oui le texte nous donne, comme ça, des tas de règles à suivre pour le lire -- et affûter nos syllogismes dessus.
La seconde est que (10f) vaut 0. Okay je n'ai pas calculé mais les probabilités pour que l'expression soit toujours vraie sont proches de 0 alors je ne vais pas me fatiguer. Ce qui signifie qu'en l'état, à la manière dont on représente le texte... le texte est toujours faux.
Avant de vous laisser, j'aimerais revenir sur l'article précédent (sur les connecteurs), et sur mon fameux et totalement pas polémique d'exemple politique :
11) On défend la Constitution.
Si on défend la Constitution alors on respecte le droit international.
Donc on défend le droit international.
Est-ce qu'on peut formaliser ce truc ? Oui, facilement :
11a) p
>( p q )
q
Est-ce qu'on peut évaluer ça ? Euh... en l'état, non. On ne le pourra qu'au prochain article.
Mais, une fois encore : on a oublié de quantifier. Et vous allez voir que ça change tout :
11b) [p][ p ]
[pq][ >( p q ) ]
[q][ q ]
Très bien ! Qu'est-ce qu'on a là ? Alors : première ligne, [p][ p ] on a vu (exemple (8) ) que c'était toujours faux. Idem pour la troisième ligne, ce qui nous permet également de dire que la conclusion et l'hypothèse (en termes de syllogisme) sont équivalentes. Woohoo ! Tu conclus la même chose que tu supposais au départ, t'es génial ! Plus sérieusement ça aurait été plus rapide de juste remplacer la variable, pas besoin de règle...
Quant à la règle, au passage... elle est toujours fausse également. Bah oui, quantificateur.
Donc ! On a une hypothèse toujours fausse et une règle toujours fausse qui donnent une conclusion toujours fausse, notre logique est sans faille.
Dans le prochain article on parlera (enfin) du raisonnement et on verra comment parer à ce problème de "toutes tes expressions sont fausses", on bannira Discord et on récoltera enfin les premiers fruits de ce long périple au travers des bases de la logique.
On est encore à des kilomètres de pouvoir appliquer ça à nos textes mais eh. De toute manière vous feriez mieux de retourner les écrire, donc, fanficers,
à vos plumes !
L'article a été visualisé 234 fois depuis sa publication le 18 novembre 2014. Celui-ci possède 1 commentaire.
Signaler l'article
16 fictions publiées
48 chapitres publiés
437 commentaires publiés
10 notes données
62 articles
Les créations et histoires appartiennent à leurs auteurs respectifs, toute reproduction et/ou diffusion sans l'accord explicite de MLPFictions ou de l'auteur est interdite. Ce site n'est ni affilié à Hasbro ni à ses marques déposées. Les images sont la propriété exclusive d'Hasbro "©2017 Hasbro. Tous droits réservés." ©2017 MLPFictions, version 1.2.7. Création et code par Shining Paradox, maintien par Sevenn.
Pour donner votre avis, connectez-vous ou inscrivez-vous.