{"id":15168734,"url":"https://github.com/sauzeauyannis/ls-projet","last_synced_at":"2025-10-01T02:30:59.617Z","repository":{"id":119821943,"uuid":"466396889","full_name":"SauzeauYannis/LS-Projet","owner":"SauzeauYannis","description":"An interpreter for an imperative language and a Hoare logic prover","archived":true,"fork":false,"pushed_at":"2022-06-30T08:24:41.000Z","size":479,"stargazers_count":0,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-27T06:41:04.993Z","etag":null,"topics":["coq","hoare-logic","imperative-language","interpreter","ocaml","prover","school-project"],"latest_commit_sha":null,"homepage":"","language":"OCaml","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SauzeauYannis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-03-05T08:37:26.000Z","updated_at":"2023-01-27T23:28:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"23d6eb01-ae80-40ff-bbc2-542734d01d2e","html_url":"https://github.com/SauzeauYannis/LS-Projet","commit_stats":{"total_commits":30,"total_committers":4,"mean_commits":7.5,"dds":0.6,"last_synced_commit":"f7dba3e341ea6a0aa81996ebe3464903397928ce"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SauzeauYannis%2FLS-Projet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SauzeauYannis%2FLS-Projet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SauzeauYannis%2FLS-Projet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SauzeauYannis%2FLS-Projet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SauzeauYannis","download_url":"https://codeload.github.com/SauzeauYannis/LS-Projet/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219875269,"owners_count":16554660,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["coq","hoare-logic","imperative-language","interpreter","ocaml","prover","school-project"],"created_at":"2024-09-27T06:41:09.913Z","updated_at":"2025-10-01T02:30:59.256Z","avatar_url":"https://github.com/SauzeauYannis.png","language":"OCaml","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LS-Projet\n\n##### Table of Contents\n* [Français](#fr)\n  * [Présentation](#fr_pr)\n  * [Utilisation](#fr_ut)\n  * [Compétences acquises](#fr_cp)\n  * [Résultat](#fr_rs)\n* [English](#en)\n  * [Presentation](#en_pr)\n  * [Use](#en_u)\n  * [Skills acquired](#en_sk)\n  * [Result](#en_rs)\n\n\u003ca name=\"fr\"/\u003e\n\n## Français\n\n\u003ca name=\"fr_pr\"/\u003e\n\n### Présentation\n\nCe projet a été effectué en quatrième année du [CMI Informatique](http://formations.univ-poitiers.fr/fr/index/autre-diplome-niveau-master-AM/autre-diplome-niveau-master-AM/cmi-informatique-JD2XQGVY.html) à l'[UFR SFA Université de Poitiers](https://sfa.univ-poitiers.fr/) dans le cadre de l'enseignement [Logiciels sûrs](https://formations.univ-poitiers.fr/fr/index/autre-diplome-niveau-master-AM/autre-diplome-niveau-master-AM/cmi-informatique-JD2XQGVY/cmi-parcours-conception-logicielle-K56KZ5KL/specialite-s8-K5C80CME/ue-a-choix-s2-KVWH4P9T/logiciels-surs-KZSZWASS.html).\n\nCe projet a été développé en trinôme avec l'IDE [Visual Studio Code](https://code.visualstudio.com/).\n\n\u003ca name=\"fr_ut\"/\u003e\n\n### Utilisation\n\nNotre code se trouve dans le fichier [projet.ml](https://github.com/SauzeauYannis/LS-Projet/blob/main/projet.ml), ce fichier peut être interprété pas à pas ou bien être exécuté. \n\nPour exécuter notre projet, il suffit d'utiliser la commande `make` qui compile les sources, vous pouvez ensuite lancer le projet avec la commande `./a.out`.\n\n\u003ca name=\"fr_cp\"/\u003e\n\n### Compétences acquises\n\n* Vérification formelle de logiciels\n  * Introduction à l’assistant de preuves Coq  \n* Validation et vérification d’un programme\n  * Preuve de propriétés d’un programme \n  * Limites des techniques de tests\n  * Vérification par la preuve formelle de programmes\n  * Périmètre de la vérification formelle\n* Notions d’équivalence de programmes et de transformations de programmes\n  * Logique de Hoare\n  * Triplets de Hoare\n  * Assertions\n  * Décoration de programmes\n  * Invariants de boucles\n  * Précondition la plus faible\n\n\u003ca name=\"fr_rs\"/\u003e\n\n### Résultat\n\nNous avons obtenu la note de 20/20.\n\n\u003ca name=\"en\"/\u003e\n\n## English\n\n\u003ca name=\"en_pr\"/\u003e\n\n### Presentation\n\nThis project was done in the fourth year of the [CMI Computer Science](http://formations.univ-poitiers.fr/fr/index/autre-diplome-niveau-master-AM/autre-diplome-niveau-master-AM/cmi-informatique-JD2XQGVY.html) at the [UFR SFA Université de Poitiers](https://sfa.univ-poitiers.fr/) in the context of the teaching [Secure software](https://formations.univ-poitiers.fr/fr/index/autre-diplome-niveau-master-AM/autre-diplome-niveau-master-AM/cmi-informatique-JD2XQGVY/cmi-parcours-conception-logicielle-K56KZ5KL/specialite-s8-K5C80CME/ue-a-choix-s2-KVWH4P9T/logiciels-surs-KZSZWASS.html).\n\nThis project was developed in trinomial with the IDE [Visual Studio Code](https://code.visualstudio.com/).\n\n\u003ca name=\"en_u\"/\u003e\n\n### Use\n\nOur code is in the file [project.ml](https://github.com/SauzeauYannis/LS-Projet/blob/main/projet.ml), this file can be interpreted step by step or executed. \n\nTo execute our project, you just have to use the command `make` which compiles the sources, you can then launch the project with the command `./a.out`.\n\u003ca name=\"en_sk\"/\u003e\n\n### Skills acquired\n\n* Formal software verification\n  * Introduction to the Coq proof assistant  \n* Validation and verification of a program\n  * Proof of program properties \n  * Limits of testing techniques\n  * Verification by formal proof of programs\n  * Perimeter of formal verification\n* Notions of program equivalence and program transformations\n  * Hoare logic\n  * Hoare's triplets\n  * Assertions\n  * Decoration of programs\n  * Loop invariants\n  * Weakest precondition\n  \n\u003ca name=\"en_rs\"/\u003e\n\n### Result\n\nWe obtained a score of 20/20.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsauzeauyannis%2Fls-projet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsauzeauyannis%2Fls-projet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsauzeauyannis%2Fls-projet/lists"}