Abstract-We definiera en monadic översättning av typteori, som kallas avvänjning översättning, som möjliggör en stor spännvidd av effekter i beroende typ teori-såsom undantag, nontermination, non-determinism eller skrivande verksamhet. Genom ljuset av en dekomposition med call-by-push-värde förklarar vi varför det traditionella tillvägagångssättet misslyckas med typberoendet och rättfärdigar vårt tillvägagångssätt. Avgörande är att konstruktionen kräver att universum av algebras av monaden bildar sig en algebra. Avvänjningsöversättningen gäller för en version av analysen av induktiva konstruktioner (CIC) med en begränsad version av beroende eliminering. Slutligen visar vi hur man återvinner en översättning av fullständig CIC genom att blanda parametricity tekniker med avvänjningsöversättningen. Detta ger den första effektiva versionen av CIC. Klyftan mellan typteorier som CIC och vanliga programmeringsspråk kommer i stor utsträckning från frånvaron av effekter i typteorier, på grund av deras komplexa interaktion med beroende. Till exempel har det redan märkts att induktiva typer och beroende eliminering inte skalas väl till CPS översättningar och klassisk logik [1], [2]. Dessutom, det traditionella sättet att integrera effekter i funktionell programmering med hjälp av monader inte skala till beroende eftersom monad läcker in i typen under substitution. I detta dokument föreslår vi Baklofen Type Theory (BTT), en nedskalad version av CIC, och vi ger generiska begrepp av syntaktiska modeller 1 av det som möjliggör ett stort utbud av effekter i beroende typ teori-undantag, non-termination, icke-determinism eller skrivande verksamhet. BTT har en begränsad version av beroende eliminering för att övervinna svårigheten att gifta effekt och beroende. De syntaktiska modellerna ges av den avvanda översättningen av BTT till CIC, med hjälp av en variant av den traditionella monadiska översättningen. Behovet av denna variant kan förklaras genom att analysera den call-by-push-värde (CBPV) nedbrytningen av call-by-värde och call-by-name minskningsstrategier. Avgörande är att vår konstruktion kräver att universum av algebras av monaden själv bildar en algebra. En monad som tillfredsställer denna egendom sägs vara självalgebraisk. Vi visar sedan hur mycket vanliga monader tillfredsställer denna fastighet och därmed ger upphov till effekter som kan integreras i BTT. Slutligen, genom att blanda parametricity tekniker med avvänjning översättningen, visar vi hur man återfår en översättning av full CIC, vilket ger upphov till den första effektiva versionen av CIC.
Denna klass av översättning fungerar på alla CIC men för en begränsad version av beroende eliminering, identisk med Baklofen typ teori REF.
An effectful way to eliminate addiction to dependence
{'venue': '2017 32nd Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)', 'journal': '2017 32nd Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)', 'mag_field_of_study': ['Computer Science']}