{"action":"created","comment":{"url":"https://api.github.com/repos/coq/coq/pulls/comments/243711634","pull_request_review_id":187563094,"id":243711634,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDI0MzcxMTYzNA==","diff_hunk":"@@ -105,6 +105,227 @@ bindings_list`` where ``bindings_list`` may be of two different forms:\n   .. exn:: Not the right number of missing arguments.\n      :undocumented:\n \n+.. _intropatterns:\n+\n+Intro patterns\n+~~~~~~~~~~~~~~\n+\n+Intro patterns let you specify the name to assign to variables and hypotheses\n+introduced by tactics.  They also let you split an introduced hypothesis into\n+multiple hypotheses or subgoals.  Common tactics that accept intro patterns\n+include :tacn:`intros`, :tacn:`destruct` and :tacn:`apply`.\n+\n+.. productionlist::        coq\n+   simple_intropattern     : `simple_intropattern_closed`\n+                           : % `operconstr` ... % `operconstr`\n+   simple_intropattern_closed : `or_and_intropattern`\n+                              : `equality_intropattern`\n+                              : _\n+                              : `naming_intropattern`\n+   or_and_intropattern     : [ `intropatterns` | ... | `intropatterns` ]","path":"doc/sphinx/proof-engine/tactics.rst","position":30,"original_position":30,"commit_id":"ea1c0d3670e22c615e0f2971cade3b34fd43e381","original_commit_id":"ea1c0d3670e22c615e0f2971cade3b34fd43e381","user":{"login":"jfehrle","id":1253341,"node_id":"MDQ6VXNlcjEyNTMzNDE=","avatar_url":"https://avatars1.githubusercontent.com/u/1253341?v=4","gravatar_id":"","url":"https://api.github.com/users/jfehrle","html_url":"https://github.com/jfehrle","followers_url":"https://api.github.com/users/jfehrle/followers","following_url":"https://api.github.com/users/jfehrle/following{/other_user}","gists_url":"https://api.github.com/users/jfehrle/gists{/gist_id}","starred_url":"https://api.github.com/users/jfehrle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jfehrle/subscriptions","organizations_url":"https://api.github.com/users/jfehrle/orgs","repos_url":"https://api.github.com/users/jfehrle/repos","events_url":"https://api.github.com/users/jfehrle/events{/privacy}","received_events_url":"https://api.github.com/users/jfehrle/received_events","type":"User","site_admin":false},"body":"I discovered that you don't have to have '|' to begin the 2nd..nth productions for a nonterminal.  I think we should remove them throughout the documentation because they are visual clutter, they make it harder to read and can confuse.\r\n\r\n![image](https://user-images.githubusercontent.com/1253341/50367194-63f54480-0533-11e9-8028-679d3cc2a688.png)\r\n","created_at":"2018-12-21T23:17:05Z","updated_at":"2018-12-21T23:36:31Z","html_url":"https://github.com/coq/coq/pull/9269#discussion_r243711634","pull_request_url":"https://api.github.com/repos/coq/coq/pulls/9269","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/coq/coq/pulls/comments/243711634"},"html":{"href":"https://github.com/coq/coq/pull/9269#discussion_r243711634"},"pull_request":{"href":"https://api.github.com/repos/coq/coq/pulls/9269"}}},"pull_request":{"url":"https://api.github.com/repos/coq/coq/pulls/9269","id":240592955,"node_id":"MDExOlB1bGxSZXF1ZXN0MjQwNTkyOTU1","html_url":"https://github.com/coq/coq/pull/9269","diff_url":"https://github.com/coq/coq/pull/9269.diff","patch_url":"https://github.com/coq/coq/pull/9269.patch","issue_url":"https://api.github.com/repos/coq/coq/issues/9269","number":9269,"state":"open","locked":false,"title":"Move and rewrite intro pattern section","user":{"login":"jfehrle","id":1253341,"node_id":"MDQ6VXNlcjEyNTMzNDE=","avatar_url":"https://avatars1.githubusercontent.com/u/1253341?v=4","gravatar_id":"","url":"https://api.github.com/users/jfehrle","html_url":"https://github.com/jfehrle","followers_url":"https://api.github.com/users/jfehrle/followers","following_url":"https://api.github.com/users/jfehrle/following{/other_user}","gists_url":"https://api.github.com/users/jfehrle/gists{/gist_id}","starred_url":"https://api.github.com/users/jfehrle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jfehrle/subscriptions","organizations_url":"https://api.github.com/users/jfehrle/orgs","repos_url":"https://api.github.com/users/jfehrle/repos","events_url":"https://api.github.com/users/jfehrle/events{/privacy}","received_events_url":"https://api.github.com/users/jfehrle/received_events","type":"User","site_admin":false},"body":"**Kind:** documentation.\r\n\r\nFixes / closes https://github.com/coq/coq/issues/9221\r\n\r\nThis is a work in progress.  It needs a fair bit of help from those who know more.\r\n\r\nThis PR:\r\n- moves the description of intro patterns from under the intros tactic to its own subsection under \"Tactics/Invocation of tactics\"\r\n- rewrites the material almost completely to make it simpler and accessible to the non-expert.  Description progresses from the most commonly to less commonly used parts.\r\n- adds a grammar for intro patterns\r\n- adds more (and simpler) examples, grouped at the end of the section","created_at":"2018-12-21T22:43:31Z","updated_at":"2018-12-21T23:36:31Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ae5366ad6939270f8a7b47ad284a080e014a465e","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":661181694,"node_id":"MDU6TGFiZWw2NjExODE2OTQ=","url":"https://api.github.com/repos/coq/coq/labels/help%20wanted","name":"help wanted","color":"fff06a","default":true},{"id":649046438,"node_id":"MDU6TGFiZWw2NDkwNDY0Mzg=","url":"https://api.github.com/repos/coq/coq/labels/kind:%20documentation","name":"kind: documentation","color":"990000","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/coq/coq/pulls/9269/commits","review_comments_url":"https://api.github.com/repos/coq/coq/pulls/9269/comments","review_comment_url":"https://api.github.com/repos/coq/coq/pulls/comments{/number}","comments_url":"https://api.github.com/repos/coq/coq/issues/9269/comments","statuses_url":"https://api.github.com/repos/coq/coq/statuses/ea1c0d3670e22c615e0f2971cade3b34fd43e381","head":{"label":"jfehrle:doc_intro_pattern","ref":"doc_intro_pattern","sha":"ea1c0d3670e22c615e0f2971cade3b34fd43e381","user":{"login":"jfehrle","id":1253341,"node_id":"MDQ6VXNlcjEyNTMzNDE=","avatar_url":"https://avatars1.githubusercontent.com/u/1253341?v=4","gravatar_id":"","url":"https://api.github.com/users/jfehrle","html_url":"https://github.com/jfehrle","followers_url":"https://api.github.com/users/jfehrle/followers","following_url":"https://api.github.com/users/jfehrle/following{/other_user}","gists_url":"https://api.github.com/users/jfehrle/gists{/gist_id}","starred_url":"https://api.github.com/users/jfehrle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jfehrle/subscriptions","organizations_url":"https://api.github.com/users/jfehrle/orgs","repos_url":"https://api.github.com/users/jfehrle/repos","events_url":"https://api.github.com/users/jfehrle/events{/privacy}","received_events_url":"https://api.github.com/users/jfehrle/received_events","type":"User","site_admin":false},"repo":{"id":112877607,"node_id":"MDEwOlJlcG9zaXRvcnkxMTI4Nzc2MDc=","name":"coq","full_name":"jfehrle/coq","private":false,"owner":{"login":"jfehrle","id":1253341,"node_id":"MDQ6VXNlcjEyNTMzNDE=","avatar_url":"https://avatars1.githubusercontent.com/u/1253341?v=4","gravatar_id":"","url":"https://api.github.com/users/jfehrle","html_url":"https://github.com/jfehrle","followers_url":"https://api.github.com/users/jfehrle/followers","following_url":"https://api.github.com/users/jfehrle/following{/other_user}","gists_url":"https://api.github.com/users/jfehrle/gists{/gist_id}","starred_url":"https://api.github.com/users/jfehrle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jfehrle/subscriptions","organizations_url":"https://api.github.com/users/jfehrle/orgs","repos_url":"https://api.github.com/users/jfehrle/repos","events_url":"https://api.github.com/users/jfehrle/events{/privacy}","received_events_url":"https://api.github.com/users/jfehrle/received_events","type":"User","site_admin":false},"html_url":"https://github.com/jfehrle/coq","description":"Coq is a formal proof management system. It provides a formal language to write mathematical definitions, executable algorithms and theorems together with an environment for semi-interactive development of machine-checked proofs. ","fork":true,"url":"https://api.github.com/repos/jfehrle/coq","forks_url":"https://api.github.com/repos/jfehrle/coq/forks","keys_url":"https://api.github.com/repos/jfehrle/coq/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jfehrle/coq/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jfehrle/coq/teams","hooks_url":"https://api.github.com/repos/jfehrle/coq/hooks","issue_events_url":"https://api.github.com/repos/jfehrle/coq/issues/events{/number}","events_url":"https://api.github.com/repos/jfehrle/coq/events","assignees_url":"https://api.github.com/repos/jfehrle/coq/assignees{/user}","branches_url":"https://api.github.com/repos/jfehrle/coq/branches{/branch}","tags_url":"https://api.github.com/repos/jfehrle/coq/tags","blobs_url":"https://api.github.com/repos/jfehrle/coq/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jfehrle/coq/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jfehrle/coq/git/refs{/sha}","trees_url":"https://api.github.com/repos/jfehrle/coq/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jfehrle/coq/statuses/{sha}","languages_url":"https://api.github.com/repos/jfehrle/coq/languages","stargazers_url":"https://api.github.com/repos/jfehrle/coq/stargazers","contributors_url":"https://api.github.com/repos/jfehrle/coq/contributors","subscribers_url":"https://api.github.com/repos/jfehrle/coq/subscribers","subscription_url":"https://api.github.com/repos/jfehrle/coq/subscription","commits_url":"https://api.github.com/repos/jfehrle/coq/commits{/sha}","git_commits_url":"https://api.github.com/repos/jfehrle/coq/git/commits{/sha}","comments_url":"https://api.github.com/repos/jfehrle/coq/comments{/number}","issue_comment_url":"https://api.github.com/repos/jfehrle/coq/issues/comments{/number}","contents_url":"https://api.github.com/repos/jfehrle/coq/contents/{+path}","compare_url":"https://api.github.com/repos/jfehrle/coq/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jfehrle/coq/merges","archive_url":"https://api.github.com/repos/jfehrle/coq/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jfehrle/coq/downloads","issues_url":"https://api.github.com/repos/jfehrle/coq/issues{/number}","pulls_url":"https://api.github.com/repos/jfehrle/coq/pulls{/number}","milestones_url":"https://api.github.com/repos/jfehrle/coq/milestones{/number}","notifications_url":"https://api.github.com/repos/jfehrle/coq/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jfehrle/coq/labels{/name}","releases_url":"https://api.github.com/repos/jfehrle/coq/releases{/id}","deployments_url":"https://api.github.com/repos/jfehrle/coq/deployments","created_at":"2017-12-02T21:19:37Z","updated_at":"2017-12-02T21:19:48Z","pushed_at":"2018-12-21T22:53:58Z","git_url":"git://github.com/jfehrle/coq.git","ssh_url":"git@github.com:jfehrle/coq.git","clone_url":"https://github.com/jfehrle/coq.git","svn_url":"https://github.com/jfehrle/coq","homepage":"https://coq.inria.fr/","size":117800,"stargazers_count":0,"watchers_count":0,"language":"OCaml","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":1,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":1,"watchers":0,"default_branch":"master"}},"base":{"label":"coq:master","ref":"master","sha":"6c8d47b07b4f0ec59169ac207b204d2bf2116f3a","user":{"login":"coq","id":621198,"node_id":"MDEyOk9yZ2FuaXphdGlvbjYyMTE5OA==","avatar_url":"https://avatars1.githubusercontent.com/u/621198?v=4","gravatar_id":"","url":"https://api.github.com/users/coq","html_url":"https://github.com/coq","followers_url":"https://api.github.com/users/coq/followers","following_url":"https://api.github.com/users/coq/following{/other_user}","gists_url":"https://api.github.com/users/coq/gists{/gist_id}","starred_url":"https://api.github.com/users/coq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coq/subscriptions","organizations_url":"https://api.github.com/users/coq/orgs","repos_url":"https://api.github.com/users/coq/repos","events_url":"https://api.github.com/users/coq/events{/privacy}","received_events_url":"https://api.github.com/users/coq/received_events","type":"Organization","site_admin":false},"repo":{"id":1377159,"node_id":"MDEwOlJlcG9zaXRvcnkxMzc3MTU5","name":"coq","full_name":"coq/coq","private":false,"owner":{"login":"coq","id":621198,"node_id":"MDEyOk9yZ2FuaXphdGlvbjYyMTE5OA==","avatar_url":"https://avatars1.githubusercontent.com/u/621198?v=4","gravatar_id":"","url":"https://api.github.com/users/coq","html_url":"https://github.com/coq","followers_url":"https://api.github.com/users/coq/followers","following_url":"https://api.github.com/users/coq/following{/other_user}","gists_url":"https://api.github.com/users/coq/gists{/gist_id}","starred_url":"https://api.github.com/users/coq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coq/subscriptions","organizations_url":"https://api.github.com/users/coq/orgs","repos_url":"https://api.github.com/users/coq/repos","events_url":"https://api.github.com/users/coq/events{/privacy}","received_events_url":"https://api.github.com/users/coq/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/coq/coq","description":"Coq is a formal proof management system. It provides a formal language to write mathematical definitions, executable algorithms and theorems together with an environment for semi-interactive development of machine-checked proofs. ","fork":false,"url":"https://api.github.com/repos/coq/coq","forks_url":"https://api.github.com/repos/coq/coq/forks","keys_url":"https://api.github.com/repos/coq/coq/keys{/key_id}","collaborators_url":"https://api.github.com/repos/coq/coq/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/coq/coq/teams","hooks_url":"https://api.github.com/repos/coq/coq/hooks","issue_events_url":"https://api.github.com/repos/coq/coq/issues/events{/number}","events_url":"https://api.github.com/repos/coq/coq/events","assignees_url":"https://api.github.com/repos/coq/coq/assignees{/user}","branches_url":"https://api.github.com/repos/coq/coq/branches{/branch}","tags_url":"https://api.github.com/repos/coq/coq/tags","blobs_url":"https://api.github.com/repos/coq/coq/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/coq/coq/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/coq/coq/git/refs{/sha}","trees_url":"https://api.github.com/repos/coq/coq/git/trees{/sha}","statuses_url":"https://api.github.com/repos/coq/coq/statuses/{sha}","languages_url":"https://api.github.com/repos/coq/coq/languages","stargazers_url":"https://api.github.com/repos/coq/coq/stargazers","contributors_url":"https://api.github.com/repos/coq/coq/contributors","subscribers_url":"https://api.github.com/repos/coq/coq/subscribers","subscription_url":"https://api.github.com/repos/coq/coq/subscription","commits_url":"https://api.github.com/repos/coq/coq/commits{/sha}","git_commits_url":"https://api.github.com/repos/coq/coq/git/commits{/sha}","comments_url":"https://api.github.com/repos/coq/coq/comments{/number}","issue_comment_url":"https://api.github.com/repos/coq/coq/issues/comments{/number}","contents_url":"https://api.github.com/repos/coq/coq/contents/{+path}","compare_url":"https://api.github.com/repos/coq/coq/compare/{base}...{head}","merges_url":"https://api.github.com/repos/coq/coq/merges","archive_url":"https://api.github.com/repos/coq/coq/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/coq/coq/downloads","issues_url":"https://api.github.com/repos/coq/coq/issues{/number}","pulls_url":"https://api.github.com/repos/coq/coq/pulls{/number}","milestones_url":"https://api.github.com/repos/coq/coq/milestones{/number}","notifications_url":"https://api.github.com/repos/coq/coq/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/coq/coq/labels{/name}","releases_url":"https://api.github.com/repos/coq/coq/releases{/id}","deployments_url":"https://api.github.com/repos/coq/coq/deployments","created_at":"2011-02-17T05:49:37Z","updated_at":"2018-12-21T22:53:31Z","pushed_at":"2018-12-21T22:54:00Z","git_url":"git://github.com/coq/coq.git","ssh_url":"git@github.com:coq/coq.git","clone_url":"https://github.com/coq/coq.git","svn_url":"https://github.com/coq/coq","homepage":"https://coq.inria.fr/","size":121794,"stargazers_count":1688,"watchers_count":1688,"language":"OCaml","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":304,"mirror_url":null,"archived":false,"open_issues_count":1924,"license":{"key":"lgpl-2.1","name":"GNU Lesser General Public License v2.1","spdx_id":"LGPL-2.1","url":"https://api.github.com/licenses/lgpl-2.1","node_id":"MDc6TGljZW5zZTEx"},"forks":304,"open_issues":1924,"watchers":1688,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/coq/coq/pulls/9269"},"html":{"href":"https://github.com/coq/coq/pull/9269"},"issue":{"href":"https://api.github.com/repos/coq/coq/issues/9269"},"comments":{"href":"https://api.github.com/repos/coq/coq/issues/9269/comments"},"review_comments":{"href":"https://api.github.com/repos/coq/coq/pulls/9269/comments"},"review_comment":{"href":"https://api.github.com/repos/coq/coq/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/coq/coq/pulls/9269/commits"},"statuses":{"href":"https://api.github.com/repos/coq/coq/statuses/ea1c0d3670e22c615e0f2971cade3b34fd43e381"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"jfehrle"}}