{"action":"created","comment":{"url":"https://api.github.com/repos/gapt/gapt/pulls/comments/179693660","pull_request_review_id":109986070,"id":179693660,"diff_hunk":"@@ -1460,7 +1460,33 @@ \\section{Expansion proofs}\n can selectively expand quantifiers by clicking on them,\n see~\\cite{Hetzl13Understanding} for a detailed description.\n \n+\\section{Modified realizability}\n \n+The GAPT-system contains an implementation of modified realizability. This is a variant of realizability where the realizers are terms of system T: an extension of the simply typed lambda calculus with inductive types and recursors that allow for recursive computation over terms of those types. \n+\n+The implementation extracts realizers for theorems from their proofs in the natural deduction calculus. If the conclusion of the proof depends on a number of hypothesis, i.e. there are formulas $A_1,...,A_n$ in the antecedent of the final sequent, the algorithm returns a term $M$ with free variables  $x_1,...,x_n$ such that $M[M_1/x_1]...[M_n/x_n]$ is a realizer for the succedent, where $M_i$ realizes $A_i$. The formulas in the conclusion are also allowed to have free variables. In this case, the substitution of free variables in both the formulas and its realizer by the same closed terms, gives a realizer for the resulting sentence.\n+\n+The natural deduction calculus contains two rules that are problematic for the extraction of realizers, namely the theorem axiom, which can be instantiated by any formula, and a rule for the lemma of the excluded middle. When these are used, a realizer can not be computed - it might not even exists. In the case of the theory axiom, we would need a realizer for the theorem that is introduced by the axiom, and for the excluded middle rule, we would need a realizer for $A \\lor \\neg A$ to compute the realizer for the conclusion of the rule. These rules therefore introduce free variables in the resulting realizers, that serve as placeholders for the realizers we need.\n+\n+Consider the following proof, that is made after defining up an implicit context containing the natural numbers and the primitive recursive function `+` : \n+\n+\\begin{clilisting}\n+gapt> val p4 = nd.ForallIntroRule(p3,hov\"x:nat\",hov\"x:nat\")","path":"doc/user_manual.tex","position":null,"original_position":15,"commit_id":"47ad2e7acd7364f0b373252b5f285c73debadb9e","original_commit_id":"5adf9cb99139fdcaeabbce08173cb94ef83ac653","user":{"login":"MarielleLouise","id":24370000,"avatar_url":"https://avatars3.githubusercontent.com/u/24370000?v=4","gravatar_id":"","url":"https://api.github.com/users/MarielleLouise","html_url":"https://github.com/MarielleLouise","followers_url":"https://api.github.com/users/MarielleLouise/followers","following_url":"https://api.github.com/users/MarielleLouise/following{/other_user}","gists_url":"https://api.github.com/users/MarielleLouise/gists{/gist_id}","starred_url":"https://api.github.com/users/MarielleLouise/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarielleLouise/subscriptions","organizations_url":"https://api.github.com/users/MarielleLouise/orgs","repos_url":"https://api.github.com/users/MarielleLouise/repos","events_url":"https://api.github.com/users/MarielleLouise/events{/privacy}","received_events_url":"https://api.github.com/users/MarielleLouise/received_events","type":"User","site_admin":false},"body":"Sorry I misunderstood the comment, you are right, I will change it.","created_at":"2018-04-06T08:42:03Z","updated_at":"2018-04-06T08:42:03Z","html_url":"https://github.com/gapt/gapt/pull/685#discussion_r179693660","pull_request_url":"https://api.github.com/repos/gapt/gapt/pulls/685","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/gapt/gapt/pulls/comments/179693660"},"html":{"href":"https://github.com/gapt/gapt/pull/685#discussion_r179693660"},"pull_request":{"href":"https://api.github.com/repos/gapt/gapt/pulls/685"}},"in_reply_to_id":179389329},"pull_request":{"url":"https://api.github.com/repos/gapt/gapt/pulls/685","id":167914397,"html_url":"https://github.com/gapt/gapt/pull/685","diff_url":"https://github.com/gapt/gapt/pull/685.diff","patch_url":"https://github.com/gapt/gapt/pull/685.patch","issue_url":"https://api.github.com/repos/gapt/gapt/issues/685","number":685,"state":"open","locked":false,"title":"Modified realizability","user":{"login":"gebner","id":313929,"avatar_url":"https://avatars1.githubusercontent.com/u/313929?v=4","gravatar_id":"","url":"https://api.github.com/users/gebner","html_url":"https://github.com/gebner","followers_url":"https://api.github.com/users/gebner/followers","following_url":"https://api.github.com/users/gebner/following{/other_user}","gists_url":"https://api.github.com/users/gebner/gists{/gist_id}","starred_url":"https://api.github.com/users/gebner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gebner/subscriptions","organizations_url":"https://api.github.com/users/gebner/orgs","repos_url":"https://api.github.com/users/gebner/repos","events_url":"https://api.github.com/users/gebner/events{/privacy}","received_events_url":"https://api.github.com/users/gebner/received_events","type":"User","site_admin":false},"body":"(As usual, I'm just making a PR so that I can see all changes at a glance and add review comments.)","created_at":"2018-02-08T09:15:51Z","updated_at":"2018-04-06T08:42:03Z","closed_at":null,"merged_at":null,"merge_commit_sha":"e1a13356533301fe625965c577fccb50d00f2072","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":170665322,"url":"https://api.github.com/repos/gapt/gapt/labels/Enhancement","name":"Enhancement","color":"0052cc","default":false}],"milestone":{"url":"https://api.github.com/repos/gapt/gapt/milestones/12","html_url":"https://github.com/gapt/gapt/milestone/12","labels_url":"https://api.github.com/repos/gapt/gapt/milestones/12/labels","id":3188004,"number":12,"title":"gapt 2.11","description":"","creator":{"login":"gebner","id":313929,"avatar_url":"https://avatars1.githubusercontent.com/u/313929?v=4","gravatar_id":"","url":"https://api.github.com/users/gebner","html_url":"https://github.com/gebner","followers_url":"https://api.github.com/users/gebner/followers","following_url":"https://api.github.com/users/gebner/following{/other_user}","gists_url":"https://api.github.com/users/gebner/gists{/gist_id}","starred_url":"https://api.github.com/users/gebner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gebner/subscriptions","organizations_url":"https://api.github.com/users/gebner/orgs","repos_url":"https://api.github.com/users/gebner/repos","events_url":"https://api.github.com/users/gebner/events{/privacy}","received_events_url":"https://api.github.com/users/gebner/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":0,"state":"open","created_at":"2018-03-14T17:28:09Z","updated_at":"2018-03-14T17:28:23Z","due_on":"2018-04-30T07:00:00Z","closed_at":null},"commits_url":"https://api.github.com/repos/gapt/gapt/pulls/685/commits","review_comments_url":"https://api.github.com/repos/gapt/gapt/pulls/685/comments","review_comment_url":"https://api.github.com/repos/gapt/gapt/pulls/comments{/number}","comments_url":"https://api.github.com/repos/gapt/gapt/issues/685/comments","statuses_url":"https://api.github.com/repos/gapt/gapt/statuses/47ad2e7acd7364f0b373252b5f285c73debadb9e","head":{"label":"gapt:m-realizability","ref":"m-realizability","sha":"47ad2e7acd7364f0b373252b5f285c73debadb9e","user":{"login":"gapt","id":10725194,"avatar_url":"https://avatars0.githubusercontent.com/u/10725194?v=4","gravatar_id":"","url":"https://api.github.com/users/gapt","html_url":"https://github.com/gapt","followers_url":"https://api.github.com/users/gapt/followers","following_url":"https://api.github.com/users/gapt/following{/other_user}","gists_url":"https://api.github.com/users/gapt/gists{/gist_id}","starred_url":"https://api.github.com/users/gapt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gapt/subscriptions","organizations_url":"https://api.github.com/users/gapt/orgs","repos_url":"https://api.github.com/users/gapt/repos","events_url":"https://api.github.com/users/gapt/events{/privacy}","received_events_url":"https://api.github.com/users/gapt/received_events","type":"Organization","site_admin":false},"repo":{"id":1971451,"name":"gapt","full_name":"gapt/gapt","owner":{"login":"gapt","id":10725194,"avatar_url":"https://avatars0.githubusercontent.com/u/10725194?v=4","gravatar_id":"","url":"https://api.github.com/users/gapt","html_url":"https://github.com/gapt","followers_url":"https://api.github.com/users/gapt/followers","following_url":"https://api.github.com/users/gapt/following{/other_user}","gists_url":"https://api.github.com/users/gapt/gists{/gist_id}","starred_url":"https://api.github.com/users/gapt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gapt/subscriptions","organizations_url":"https://api.github.com/users/gapt/orgs","repos_url":"https://api.github.com/users/gapt/repos","events_url":"https://api.github.com/users/gapt/events{/privacy}","received_events_url":"https://api.github.com/users/gapt/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/gapt/gapt","description":"GAPT: General Architecture for Proof Theory","fork":false,"url":"https://api.github.com/repos/gapt/gapt","forks_url":"https://api.github.com/repos/gapt/gapt/forks","keys_url":"https://api.github.com/repos/gapt/gapt/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gapt/gapt/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gapt/gapt/teams","hooks_url":"https://api.github.com/repos/gapt/gapt/hooks","issue_events_url":"https://api.github.com/repos/gapt/gapt/issues/events{/number}","events_url":"https://api.github.com/repos/gapt/gapt/events","assignees_url":"https://api.github.com/repos/gapt/gapt/assignees{/user}","branches_url":"https://api.github.com/repos/gapt/gapt/branches{/branch}","tags_url":"https://api.github.com/repos/gapt/gapt/tags","blobs_url":"https://api.github.com/repos/gapt/gapt/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gapt/gapt/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gapt/gapt/git/refs{/sha}","trees_url":"https://api.github.com/repos/gapt/gapt/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gapt/gapt/statuses/{sha}","languages_url":"https://api.github.com/repos/gapt/gapt/languages","stargazers_url":"https://api.github.com/repos/gapt/gapt/stargazers","contributors_url":"https://api.github.com/repos/gapt/gapt/contributors","subscribers_url":"https://api.github.com/repos/gapt/gapt/subscribers","subscription_url":"https://api.github.com/repos/gapt/gapt/subscription","commits_url":"https://api.github.com/repos/gapt/gapt/commits{/sha}","git_commits_url":"https://api.github.com/repos/gapt/gapt/git/commits{/sha}","comments_url":"https://api.github.com/repos/gapt/gapt/comments{/number}","issue_comment_url":"https://api.github.com/repos/gapt/gapt/issues/comments{/number}","contents_url":"https://api.github.com/repos/gapt/gapt/contents/{+path}","compare_url":"https://api.github.com/repos/gapt/gapt/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gapt/gapt/merges","archive_url":"https://api.github.com/repos/gapt/gapt/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gapt/gapt/downloads","issues_url":"https://api.github.com/repos/gapt/gapt/issues{/number}","pulls_url":"https://api.github.com/repos/gapt/gapt/pulls{/number}","milestones_url":"https://api.github.com/repos/gapt/gapt/milestones{/number}","notifications_url":"https://api.github.com/repos/gapt/gapt/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gapt/gapt/labels{/name}","releases_url":"https://api.github.com/repos/gapt/gapt/releases{/id}","deployments_url":"https://api.github.com/repos/gapt/gapt/deployments","created_at":"2011-06-29T09:15:16Z","updated_at":"2018-03-28T13:35:51Z","pushed_at":"2018-04-05T18:42:22Z","git_url":"git://github.com/gapt/gapt.git","ssh_url":"git@github.com:gapt/gapt.git","clone_url":"https://github.com/gapt/gapt.git","svn_url":"https://github.com/gapt/gapt","homepage":"https://logic.at/gapt/","size":122501,"stargazers_count":40,"watchers_count":40,"language":"Scala","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":14,"mirror_url":null,"archived":false,"open_issues_count":45,"license":{"key":"gpl-3.0","name":"GNU General Public License v3.0","spdx_id":"GPL-3.0","url":"https://api.github.com/licenses/gpl-3.0"},"forks":14,"open_issues":45,"watchers":40,"default_branch":"master"}},"base":{"label":"gapt:master","ref":"master","sha":"b2dd4e65c0a23efc5e15e4b4088b10afd551b8ab","user":{"login":"gapt","id":10725194,"avatar_url":"https://avatars0.githubusercontent.com/u/10725194?v=4","gravatar_id":"","url":"https://api.github.com/users/gapt","html_url":"https://github.com/gapt","followers_url":"https://api.github.com/users/gapt/followers","following_url":"https://api.github.com/users/gapt/following{/other_user}","gists_url":"https://api.github.com/users/gapt/gists{/gist_id}","starred_url":"https://api.github.com/users/gapt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gapt/subscriptions","organizations_url":"https://api.github.com/users/gapt/orgs","repos_url":"https://api.github.com/users/gapt/repos","events_url":"https://api.github.com/users/gapt/events{/privacy}","received_events_url":"https://api.github.com/users/gapt/received_events","type":"Organization","site_admin":false},"repo":{"id":1971451,"name":"gapt","full_name":"gapt/gapt","owner":{"login":"gapt","id":10725194,"avatar_url":"https://avatars0.githubusercontent.com/u/10725194?v=4","gravatar_id":"","url":"https://api.github.com/users/gapt","html_url":"https://github.com/gapt","followers_url":"https://api.github.com/users/gapt/followers","following_url":"https://api.github.com/users/gapt/following{/other_user}","gists_url":"https://api.github.com/users/gapt/gists{/gist_id}","starred_url":"https://api.github.com/users/gapt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gapt/subscriptions","organizations_url":"https://api.github.com/users/gapt/orgs","repos_url":"https://api.github.com/users/gapt/repos","events_url":"https://api.github.com/users/gapt/events{/privacy}","received_events_url":"https://api.github.com/users/gapt/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/gapt/gapt","description":"GAPT: General Architecture for Proof Theory","fork":false,"url":"https://api.github.com/repos/gapt/gapt","forks_url":"https://api.github.com/repos/gapt/gapt/forks","keys_url":"https://api.github.com/repos/gapt/gapt/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gapt/gapt/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gapt/gapt/teams","hooks_url":"https://api.github.com/repos/gapt/gapt/hooks","issue_events_url":"https://api.github.com/repos/gapt/gapt/issues/events{/number}","events_url":"https://api.github.com/repos/gapt/gapt/events","assignees_url":"https://api.github.com/repos/gapt/gapt/assignees{/user}","branches_url":"https://api.github.com/repos/gapt/gapt/branches{/branch}","tags_url":"https://api.github.com/repos/gapt/gapt/tags","blobs_url":"https://api.github.com/repos/gapt/gapt/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gapt/gapt/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gapt/gapt/git/refs{/sha}","trees_url":"https://api.github.com/repos/gapt/gapt/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gapt/gapt/statuses/{sha}","languages_url":"https://api.github.com/repos/gapt/gapt/languages","stargazers_url":"https://api.github.com/repos/gapt/gapt/stargazers","contributors_url":"https://api.github.com/repos/gapt/gapt/contributors","subscribers_url":"https://api.github.com/repos/gapt/gapt/subscribers","subscription_url":"https://api.github.com/repos/gapt/gapt/subscription","commits_url":"https://api.github.com/repos/gapt/gapt/commits{/sha}","git_commits_url":"https://api.github.com/repos/gapt/gapt/git/commits{/sha}","comments_url":"https://api.github.com/repos/gapt/gapt/comments{/number}","issue_comment_url":"https://api.github.com/repos/gapt/gapt/issues/comments{/number}","contents_url":"https://api.github.com/repos/gapt/gapt/contents/{+path}","compare_url":"https://api.github.com/repos/gapt/gapt/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gapt/gapt/merges","archive_url":"https://api.github.com/repos/gapt/gapt/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gapt/gapt/downloads","issues_url":"https://api.github.com/repos/gapt/gapt/issues{/number}","pulls_url":"https://api.github.com/repos/gapt/gapt/pulls{/number}","milestones_url":"https://api.github.com/repos/gapt/gapt/milestones{/number}","notifications_url":"https://api.github.com/repos/gapt/gapt/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gapt/gapt/labels{/name}","releases_url":"https://api.github.com/repos/gapt/gapt/releases{/id}","deployments_url":"https://api.github.com/repos/gapt/gapt/deployments","created_at":"2011-06-29T09:15:16Z","updated_at":"2018-03-28T13:35:51Z","pushed_at":"2018-04-05T18:42:22Z","git_url":"git://github.com/gapt/gapt.git","ssh_url":"git@github.com:gapt/gapt.git","clone_url":"https://github.com/gapt/gapt.git","svn_url":"https://github.com/gapt/gapt","homepage":"https://logic.at/gapt/","size":122501,"stargazers_count":40,"watchers_count":40,"language":"Scala","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":14,"mirror_url":null,"archived":false,"open_issues_count":45,"license":{"key":"gpl-3.0","name":"GNU General Public License v3.0","spdx_id":"GPL-3.0","url":"https://api.github.com/licenses/gpl-3.0"},"forks":14,"open_issues":45,"watchers":40,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/gapt/gapt/pulls/685"},"html":{"href":"https://github.com/gapt/gapt/pull/685"},"issue":{"href":"https://api.github.com/repos/gapt/gapt/issues/685"},"comments":{"href":"https://api.github.com/repos/gapt/gapt/issues/685/comments"},"review_comments":{"href":"https://api.github.com/repos/gapt/gapt/pulls/685/comments"},"review_comment":{"href":"https://api.github.com/repos/gapt/gapt/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/gapt/gapt/pulls/685/commits"},"statuses":{"href":"https://api.github.com/repos/gapt/gapt/statuses/47ad2e7acd7364f0b373252b5f285c73debadb9e"}},"author_association":"OWNER"}}
{"actor":{"display_login":"MarielleLouise"}}