• [^] # Re: Lapin compris

    Posté par (site web personnel) . En réponse au journal Letlang, encore un nouveau langage de programmation. Évalué à 4.

    Dans la théorie ZFC, qui est une théorie de fondation des mathématiques, au même titre que la théorie des catégories, on ne manipule que des objets que l'on pourrait qualifier d'ensemble.

    La seule opération de base est appartient à (ou in). L'opération = est alors défini comme il suit :

    • Soit A et B deux objets, A = B si et seulement si :
    • Pour tout X appartenant à A, X appartient à B
    • Pour tout Y appartenant à B, Y appartient à A

    On peut définir les opérations union et intersection de la même manière.

    On définit ensuite l'ensemble vide avec le théorème suivant :

    • Soit 0 un objet tel que :
    • Pour tout X, X n'appartient pas à 0

    NB: En utilisant la définition de = et de 0, on arrive à prouver que l'ensemble vide est unique.

    L'ensemble vide, je l'ai appelé 0 c'est pas pour rien. On peut définir quelques autres ensembles :

    • 1 = 0 U { 0 } = { 0 } = { {} }
    • 2 = 1 U { 1 } = { 0, 1 }
    • 3 = 2 U { 2 } = { 0, 1, 2 }

    A partir de cette construction, on peut créer la formule suivante : S(n) = n U { n }, ou S(n) est le "successeur de n".

    NB : On peut définir l'opération A < B tel que A appartient à B.

    Tout ça pour dire que = est très différent de in. En effet si on accepte A = B comme synonyme de B in A :

    • on brise la définition même de l'opération = en théorie ZFC
    • on insinue que A = B => B < A ce qui est contraire au sens commun

    Enfin, on a défini let x: int, c'est bizarre de le considérer comme étant un ensemble d'int. D'un point de vue typage, ça passe pas non plus.


    Fun facts:

    • N = { 0, 1, 2, 3, ... } est un objet de la même forme que 0, 1, 2 etc...
    • w = N U { N } est le successeur de N, et on a la définition des nombres ordinaux

    https://link-society.com - https://kubirds.com - https://github.com/link-society/flowg