Read It!
å»å¹´ã®Proofsummitã®ã¨ãã«ãAgdaã¨ããè¨èªã¯ãªãããããååãªã®ãã¨ãã話ã飲ã¿ä¼ã§ãããçµæ§å¥½è©ã ã£ãã®ã§ãããããã¦èª¿ã¹ããã¨ãå«ãã¦ã Agdaã¨ã¯ä½ãã¨ããã¨ãããã®ãã¨ã¿ããã å®éãAgda the henã§ã°ã°ã£ã¦ã¿ã㨠http://bit.ly/1aBKbbH ã¨ããæ¬ãåºã¦ãã¦ãæ確㫠The name Agda comes from a Swedish song about Agda the Hen, a pun on the Coq rooster. ã¨æ¸ãã¦ããã(le )Coqã¯ãã©ã³ã¹èªã§éé¶ãã§ãAgdaã¯ãã©ã³ã¹èªãããªããã©ãã¹ã¦ã§ã¼ãã³ã®æã«åºã¦ããéé¶ã®ååã§ããã¨ã ã§ãããã«ããã§ãã¦ãã話ããCoqãä½ã£ã人ã®ã²ã¨ãThierry Coquand*1ã®å¥¥ããCatarina Coquandï¼ãã®äººã§ããï¼ãAgda1ã®éçºã¡ã³ãã®
Agdaæ´2é±éãããã®ã¶ã³ã§ãã Agdaã§åè«ã®ã©ã¤ãã©ãªãä½ã£ã¦ãæµãã§ä½ç¸ç©ºéã®å®ç¾©ããããã¨æã£ããããããéåãæ®éã«æ±ããã©ã¤ãã©ãªãã©ãã«ããªãã æ¨æºã©ã¤ãã©ãªã«Relation.Unaryã¨ãããã®ããããã©ãããã¯è¡¨é¢çã«ã¯ä¸æãè¡ã£ã¦ããããã«è¦ããã ãã§ããã¾ã使ãç©ã«ãªããªãã å ·ä½çã«è¨ãã¨åéåã®å ¬çããªãã®ã§(binary cupã¨indexed bigcupã¯ãã)ä»»æåã®Unionãã¨ããªãã ä»ã«ããããããâã®å®ç¾©ãå½æ°é©ç¨ãªã®ã§ X â B ã¨æ¸ãã¨ãã«Xã¨Bã§ã¯åãéãã®ãããããã¢ãã¨ãããã¢ãã¨ãããããã®ããã§ZFã®ä¸é¨ã®å ¬çã¯åããããªãã¦è¡¨ç¾ã§ããªãã£ãããããã ããããããã§ã¾ãã¯éåã使ããããã«ããã¨ããã ãã ã³ã¼ãã¯ä¸çªä¸ã«è¼ã£ãã¾ããã ã³ã¼ãã«ã¤ã㦠äºéå¦å®é¤å» Relation.Nullary.Negation e
#ProofSummit 2014 æ¦è¦ å®ç証ææ¯æ´ç³»(Coq,Agda,Isabelle/HOL,ACL2ãªã©ãªã©)ãèªå証æå¨ãªã©ãä¸å¿ã«éã¾ããç¥ãã§ãã æ¥æ: 2014å¹´09æ06æ¥(å) å ´æ: åå¤å±å¤§å¦ å¤å æ°çç§å¦æ£ 109 åå è²»: ç¡æ åå ç»é²: ProofSummit 2014 - Partake Twitterããã·ã¥ã¿ã°: #ProofSummit æã¡ç©: ããã¤ã(é»æºã¿ãã)ã(PC) ããã°ã©ã æå» çºè¡¨è (æ¬ç§°ç¥) æå± å 容
ghc-7.8ã§ãã«ãã§ããAgdaããã«ãã¼ã¨ãæãã¤ã¤ï¼Agda-2.3.4ã®ãªãªã¼ã¹ãã¼ã(ã¾ã ãªãªã¼ã¹ããã¦ãªããã©)ãçºãã¦ããï¼å®é¨çæ©è½ã¨ãã¦copatternsã£ã¦ãã¤ãå ¥ãã¨æ¸ããã¦ããï¼ä½(co-)ãã¤ãã¦ãã®ã§ãã¶ãå¥åº·ã«ãããªããã¤ãªãã ãããªã¨æãã¤ã¤èªãã¨ï¼ãªã«ãããããªã«ã³ã¸ã®ããã ï¼ ã¿ãã«ãã¬ã³ã¼ãã§å®ç¾©ããã¨ï¼æ¬¡ã®ããã«ãªãï¼ record _Ã_ (A B : Set) : Set where constructor _,_ field fst : A snd : B open _Ã_ã¿ãã«ã®ãã£ã¼ã«ãã¨ãã¦ã¯1çªç®ã®è¦ç´ ã§ããfstã¨2çªç®ã®è¦ç´ ã§ããsndãæã£ã¦ãã¦ï¼recordãopenããã°ãããã¯æ®éã«é¢æ°ã¨ãã¦ä½¿ããï¼ é常ï¼ã¿ãã«ãä¸ãããããªé¢æ°ã¯æçµçã«ã¿ãã«ãã³ã³ã¹ãã©ã¯ããããã¨ã«ãªãï¼ pair : {A B : Set} â
This is a proof server. You can enjoy theorem proving here in Agda. Problems Recent Entries How to submit proofs. Open problem page. There are some code fragments (Definitions, Theorem and Verifier). Some problem contains 'Definitions' part. In this case, save as 'Definitions.agda'. $ agda Definitions.agda Next, save 'Theorem' as 'Theorem.agda'. This part has postulated theorems. Complete proof. $
Agda2ã§ã¯ãdataã§å®ç¾©ãããã¼ã¿åã¯æéã§ããããå©ç¨ããå帰é¢æ°ãåæ¢æ§ã証æã§ããªãã¨ãããªãããã©ãcodataã¯ãåæ¢ããªãå帰é¢æ°ãè¨è¿°ãããã¨ãã§ãã¾ãã å®ç¾©ã¯ãã©ãã«ãcodataã§ãã以å¤ãdataã¨åãã§ãã以ä¸ã®Stream Aã¯ãList Aã¨åãæ§é ã§ãããæéã§ããå¿ è¦ããªãã®ã§ãnilç¸å½ã®ã³ã³ã¹ãã©ã¯ã¿ã¯codataã«ã¯ä¸è¦ã§ãããããnilç¸å½ãåå¨ããªããã¨ã§ããã®codataãå¿ ãç¡éã§ãããã¨ãããããã¦ãã¾ãã codata Stream (A : Set) : Set where stream : A -> Stream A -> Stream A {- <=> data List (A : Set) : Set where nil : List A cons : A -> List A -> List A -} dataåæ§ã«ãæ®éã®é¢
åè㯠http://www.cs.chalmers.se/~ulfn/darcs/AFP08/LectureNotes/AgdaIntro.pdf ã¨Agda2æ·»ä»ã®examplesãããã¦ã½ã¼ã¹ã³ã¼ãã ä¸å¿emacsã¤ã³ã¿ãã§ã¼ã¹ã§ãã³ã¼ãè£å®(å¥åã証æè£å©)ã§ããUIãããã®ã§ãããèªåã¯ã¾ã£ãã使ã£ã¦ã¾ããã ä¸å¿ãããããdependently typedãªè¨èªã§ã¯ãå¼ã¨åã®åºå¥ã¯ãªããããªãã®ã§ãåé¨åã§ãå¤ãé¢æ°é©ç¨ãã§ãããããããããåããã¦é (term)ã¨ãã¦æ±ãã®ã§ããããã®termã®æå³ã§å¼ãåã¨ããèªãããã¨ä½¿ã£ã¦ãã¾ãã Agda2ã®åºæ¬ ç°¡åãªãã®ã¨ãã¦ãAgdaIntroã«ããããtrueã¨falseãããªãBoolåãã¼ã¿ã¨ããã®é¢é£é¢æ°ãå®ç¾©ãã¾ãããã ã¾ããBoolãã¼ã¿å data Bool : Set where true : Bool fa
ãã®è¨äºã¯Theorem Prover Advent Calendar 14æ¥ç®ã®è¨äºã§ãã ãã¦ãç»é²ããæç¹ã§ã¯ãAgdaãå¤ããªãCoqããªãããªã©ã¨æ¢æ°ã«è¨ã£ã¦ãã¦ãã¾ãä¸æ¥ç®ã®notogawaããã¯ãã¿ããªCoqã®ãã¨ãæ¸ãã«æ±ºã¾ã£ã¦ããã£ã½ããã¨ãAAã§è¨ã£ã¦ããããã§ãããç®±ãéãã¦ã¿ãã Σ(ââ³â)ï¼Isabelleã®äººãä¸äººã§å¤§ååãã¦ããããããï¼ï¼ ã¨ããããã§ããã§ã¯Coqã¨Agdaã®ãã¨ãæ¸ãã¾ãããããããã¾ãããã ããCoqã¨Agdaã®ãã¨ã¯notogawaãããæ¸ãã¦ãã ãã£ã¦ï¼ ç´°ããããããããã ãï¼ ã»Coqã¨Agdaãã©ã¡ãã使ãã¹ãï¼ å¥½ããªæ¹ãé¸ã¹ã°è¯ãã¨æãã®ã§ãããå人çãªèããæãã¾ãã 1:æ§è³ªï¼è¨¼æãæ¸ããªãCoqãããã§ããè¨å·å¦çãæ°å¦ã®å®å¼åãªã©ã§ããããã®è¾ºãã¯tacticã使ãã¨ããæ¦ç¥ãããªãå¹ãã¾ãããã ãããã«é¢ãã¦
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}