{"id":17931758,"url":"https://github.com/noti0na1/kripke-models","last_synced_at":"2026-01-31T10:31:56.810Z","repository":{"id":213713826,"uuid":"93274016","full_name":"noti0na1/Kripke-Models","owner":"noti0na1","description":"A Racket Implement of Kripke Models","archived":false,"fork":false,"pushed_at":"2017-06-06T01:29:44.000Z","size":18,"stargazers_count":8,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-08T23:47:37.194Z","etag":null,"topics":["computer-science","cs245e","kripke-models","logic","macro","racket","syntax-parse"],"latest_commit_sha":null,"homepage":null,"language":"Racket","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/noti0na1.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-06-03T21:07:36.000Z","updated_at":"2024-11-27T22:46:15.000Z","dependencies_parsed_at":"2023-12-22T16:10:35.029Z","dependency_job_id":"6bbe6435-447f-4210-a441-1046d0e226a7","html_url":"https://github.com/noti0na1/Kripke-Models","commit_stats":null,"previous_names":["noti0na1/kripke-models"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/noti0na1%2FKripke-Models","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/noti0na1%2FKripke-Models/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/noti0na1%2FKripke-Models/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/noti0na1%2FKripke-Models/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/noti0na1","download_url":"https://codeload.github.com/noti0na1/Kripke-Models/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246984301,"owners_count":20864416,"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":["computer-science","cs245e","kripke-models","logic","macro","racket","syntax-parse"],"created_at":"2024-10-28T21:23:47.008Z","updated_at":"2026-01-31T10:31:51.788Z","avatar_url":"https://github.com/noti0na1.png","language":"Racket","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\n# Kripke Models\n\nA Simple Racket Implement of Kripke Models\n\nExamples in `km.rkt`:\n\n```racket\n#lang racket\n(require \"KripkeModels.rkt\")\n\n#|\ndefine a tree with root r\n\n           u o C\n            /\n           /\n s o B  t o A \n    \\    /\n     \\  /\n     r o \n|#\n(define-tree\n  (r ((s B ())\n      (t A ((u C ()))))))\n\n;; enable log printing\n(set-show-log! #t)\n\n;; s ⊩ B =\u003e true\n(s . ⊩ . B)\n\n;; t ⊮ B =\u003e true\n(t . ⊮ . B)\n\n;; u ⊩ A =\u003e true\n(u . ⊩ . A)\n\n;; u ⊩ (A ∧ C) =\u003e true\n(u . ⊩ . (A ∧ C))\n\n;; u ⊩ (A ∧ C) =\u003e false\n(u . ⊩ . (A ∧ B))\n\n;; s ⊩ (A ∨ B) =\u003e true\n(s . ⊩ . (A ∨ B))\n\n;; s ⊩ (¬ A) =\u003e true\n(s . ⊩ . (¬ A))\n\n;; u ⊩ (¬ A) =\u003e false\n(u . ⊩ . (¬ A))\n\n;; r ⊩ (A -\u003e C) =\u003e false\n(r . ⊩ . (A -\u003e C))\n\n;; r ⊩ (C -\u003e A) =\u003e true\n(r . ⊩ . (C -\u003e A))\n```\n\nOutput for `(r . ⊩ . (C -\u003e A))`:\n\n```\nCheck: r ⊩ (C -\u003e A)\n Check: r ⊩ C\n Result: r ⊮ C\n Check: s ⊩ (C -\u003e A)\n  Check: s ⊩ C\n  Result: s ⊮ C\n Result: s ⊩ (C -\u003e A)\n Check: t ⊩ (C -\u003e A)\n  Check: t ⊩ C\n  Result: t ⊮ C\n  Check: u ⊩ (C -\u003e A)\n   Check: u ⊩ C\n   Result: u ⊩ C\n   Check: u ⊩ A\n   Result: u ⊩ A\n  Result: u ⊩ (C -\u003e A)\n Result: t ⊩ (C -\u003e A)\nResult: r ⊩ (C -\u003e A)\n#t\n```\n\n\n\nUpdate: add printing log, add indent","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnoti0na1%2Fkripke-models","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnoti0na1%2Fkripke-models","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnoti0na1%2Fkripke-models/lists"}