Vi utvecklar ett explicit två nivåer system som tillåter programmerare att resonera om beteendet hos effektiva program. Den första nivån är en vanlig ML-stil typ system, som ger standard egenskaper på programbeteende. Den andra nivån är en konservativ förlängning av den första som använder en logik av typ förfiningar för att kontrollera mer exakta egenskaper hos programbeteende. Vår logik är ett fragment av intuitionistisk linjär logik, vilket ger programmerare förmågan att resonera lokalt om förändringar av programtillståndet. Vi tillhandahåller en generisk resurssemantik för vår logik samt ett ljud, decidedable, syntaktic förfining-kontrollsystem. Vi bevisar också att förbättringar ger upphov till en optimeringsprincip för program. Slutligen illustrerar vi kraften i vårt system genom ett antal exempel.
Vi nämner också teorin om typförfiningar av REF, som skäl om program med effekter, genom att använda ett begränsat fragment av linjär logik.
An effective theory of type refinements
{'venue': "ICFP '03", 'journal': None, 'mag_field_of_study': ['Computer Science']}