Loading…

Derivation and inference of higher-order strictness types

We extend an existing first-order typing system for strictness analysis to the fully higher-order case, covering both the derivation system and the inference algorithm. The resulting strictness typing system has expressive capabilities far beyond that of traditional strictness analysis systems. This...

Full description

Saved in:
Bibliographic Details
Published in:Computer languages, systems & structures systems & structures, 2015-12, Vol.44, p.166-180
Main Authors: Smetsers, Sjaak, van Eekelen, Marko
Format: Article
Language:English
Subjects:
Citations: Items that this one cites
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
cited_by
cites cdi_FETCH-LOGICAL-c392t-b845054683dc08fbe4363aa40a27ed9cd9fcf8c0aa740ee5cab19b854531c5cb3
container_end_page 180
container_issue
container_start_page 166
container_title Computer languages, systems & structures
container_volume 44
creator Smetsers, Sjaak
van Eekelen, Marko
description We extend an existing first-order typing system for strictness analysis to the fully higher-order case, covering both the derivation system and the inference algorithm. The resulting strictness typing system has expressive capabilities far beyond that of traditional strictness analysis systems. This extension is developed with the explicit aim of formally proving soundness of higher-order strictness typing with respect to a natural operational semantics. A key aspect of our approach is the introduction of a proof assistant at an early stage, namely during development of the proof. As such, the theorem prover aids the design of the language theoretic concepts. The new results in combination with their formal proof can be seen as a case study towards the achievement of the long term PoplMark Challenge. The proof framework developed for this case study can furthermore be used in other typing system case studies. •We introduce syntax and semantics of a basic programming language.•We define derivation rules for a higher-order strictness typing system.•We proof soundness of our system with respect to the semantics.•The proof is formalized by using a theorem prover.•In inference algorithm is specified which infers principal strictness types.•An extension of our system with recursive data types is given.
doi_str_mv 10.1016/j.cl.2015.07.004
format article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_miscellaneous_1786202435</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><els_id>S1477842415000512</els_id><sourcerecordid>1786202435</sourcerecordid><originalsourceid>FETCH-LOGICAL-c392t-b845054683dc08fbe4363aa40a27ed9cd9fcf8c0aa740ee5cab19b854531c5cb3</originalsourceid><addsrcrecordid>eNp1kD1PwzAQhi0EEqWwM2ZkSTjHduywofIpVWKB2XIuZ-oqTYqdVuq_J1VZme6G97nT-zB2y6HgwKv7dYFdUQJXBegCQJ6xGTda5JWpqvNpl1rnRpbykl2ltAYowUg1Y_UTxbB3Yxj6zPVtFnpPkXqkbPDZKnyvKOZDbClmaYwBx55SysbDltI1u_CuS3TzN-fs6-X5c_GWLz9e3xePyxxFXY55M70BJSsjWgTjG5KiEs5JcKWmtsa29ugNgnNaApFC1_C6MUoqwVFhI-bs7nR3G4efHaXRbkJC6jrX07BLlmtTlVBKoaYonKIYh5QiebuNYePiwXKwR0t2bbGzR0sWtJ0sTcjDCaGpwj5QtAnDsX8bIuFo2yH8D_8C4EJvGA</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>1786202435</pqid></control><display><type>article</type><title>Derivation and inference of higher-order strictness types</title><source>ScienceDirect Journals</source><creator>Smetsers, Sjaak ; van Eekelen, Marko</creator><creatorcontrib>Smetsers, Sjaak ; van Eekelen, Marko</creatorcontrib><description>We extend an existing first-order typing system for strictness analysis to the fully higher-order case, covering both the derivation system and the inference algorithm. The resulting strictness typing system has expressive capabilities far beyond that of traditional strictness analysis systems. This extension is developed with the explicit aim of formally proving soundness of higher-order strictness typing with respect to a natural operational semantics. A key aspect of our approach is the introduction of a proof assistant at an early stage, namely during development of the proof. As such, the theorem prover aids the design of the language theoretic concepts. The new results in combination with their formal proof can be seen as a case study towards the achievement of the long term PoplMark Challenge. The proof framework developed for this case study can furthermore be used in other typing system case studies. •We introduce syntax and semantics of a basic programming language.•We define derivation rules for a higher-order strictness typing system.•We proof soundness of our system with respect to the semantics.•The proof is formalized by using a theorem prover.•In inference algorithm is specified which infers principal strictness types.•An extension of our system with recursive data types is given.</description><identifier>ISSN: 1477-8424</identifier><identifier>EISSN: 1873-6866</identifier><identifier>DOI: 10.1016/j.cl.2015.07.004</identifier><language>eng</language><publisher>Elsevier Ltd</publisher><subject>Aids ; Algorithms ; Automated theorem proving ; Derivation ; Design engineering ; Inference ; Lambda calculus ; Operational semantics ; Proving ; Semantics ; Strictness analysis ; Theorem proving ; Typing</subject><ispartof>Computer languages, systems &amp; structures, 2015-12, Vol.44, p.166-180</ispartof><rights>2015 Elsevier Ltd</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><cites>FETCH-LOGICAL-c392t-b845054683dc08fbe4363aa40a27ed9cd9fcf8c0aa740ee5cab19b854531c5cb3</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,27924,27925</link.rule.ids></links><search><creatorcontrib>Smetsers, Sjaak</creatorcontrib><creatorcontrib>van Eekelen, Marko</creatorcontrib><title>Derivation and inference of higher-order strictness types</title><title>Computer languages, systems &amp; structures</title><description>We extend an existing first-order typing system for strictness analysis to the fully higher-order case, covering both the derivation system and the inference algorithm. The resulting strictness typing system has expressive capabilities far beyond that of traditional strictness analysis systems. This extension is developed with the explicit aim of formally proving soundness of higher-order strictness typing with respect to a natural operational semantics. A key aspect of our approach is the introduction of a proof assistant at an early stage, namely during development of the proof. As such, the theorem prover aids the design of the language theoretic concepts. The new results in combination with their formal proof can be seen as a case study towards the achievement of the long term PoplMark Challenge. The proof framework developed for this case study can furthermore be used in other typing system case studies. •We introduce syntax and semantics of a basic programming language.•We define derivation rules for a higher-order strictness typing system.•We proof soundness of our system with respect to the semantics.•The proof is formalized by using a theorem prover.•In inference algorithm is specified which infers principal strictness types.•An extension of our system with recursive data types is given.</description><subject>Aids</subject><subject>Algorithms</subject><subject>Automated theorem proving</subject><subject>Derivation</subject><subject>Design engineering</subject><subject>Inference</subject><subject>Lambda calculus</subject><subject>Operational semantics</subject><subject>Proving</subject><subject>Semantics</subject><subject>Strictness analysis</subject><subject>Theorem proving</subject><subject>Typing</subject><issn>1477-8424</issn><issn>1873-6866</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2015</creationdate><recordtype>article</recordtype><recordid>eNp1kD1PwzAQhi0EEqWwM2ZkSTjHduywofIpVWKB2XIuZ-oqTYqdVuq_J1VZme6G97nT-zB2y6HgwKv7dYFdUQJXBegCQJ6xGTda5JWpqvNpl1rnRpbykl2ltAYowUg1Y_UTxbB3Yxj6zPVtFnpPkXqkbPDZKnyvKOZDbClmaYwBx55SysbDltI1u_CuS3TzN-fs6-X5c_GWLz9e3xePyxxFXY55M70BJSsjWgTjG5KiEs5JcKWmtsa29ugNgnNaApFC1_C6MUoqwVFhI-bs7nR3G4efHaXRbkJC6jrX07BLlmtTlVBKoaYonKIYh5QiebuNYePiwXKwR0t2bbGzR0sWtJ0sTcjDCaGpwj5QtAnDsX8bIuFo2yH8D_8C4EJvGA</recordid><startdate>20151201</startdate><enddate>20151201</enddate><creator>Smetsers, Sjaak</creator><creator>van Eekelen, Marko</creator><general>Elsevier Ltd</general><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>20151201</creationdate><title>Derivation and inference of higher-order strictness types</title><author>Smetsers, Sjaak ; van Eekelen, Marko</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c392t-b845054683dc08fbe4363aa40a27ed9cd9fcf8c0aa740ee5cab19b854531c5cb3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2015</creationdate><topic>Aids</topic><topic>Algorithms</topic><topic>Automated theorem proving</topic><topic>Derivation</topic><topic>Design engineering</topic><topic>Inference</topic><topic>Lambda calculus</topic><topic>Operational semantics</topic><topic>Proving</topic><topic>Semantics</topic><topic>Strictness analysis</topic><topic>Theorem proving</topic><topic>Typing</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Smetsers, Sjaak</creatorcontrib><creatorcontrib>van Eekelen, Marko</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>Computer languages, systems &amp; structures</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Smetsers, Sjaak</au><au>van Eekelen, Marko</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Derivation and inference of higher-order strictness types</atitle><jtitle>Computer languages, systems &amp; structures</jtitle><date>2015-12-01</date><risdate>2015</risdate><volume>44</volume><spage>166</spage><epage>180</epage><pages>166-180</pages><issn>1477-8424</issn><eissn>1873-6866</eissn><abstract>We extend an existing first-order typing system for strictness analysis to the fully higher-order case, covering both the derivation system and the inference algorithm. The resulting strictness typing system has expressive capabilities far beyond that of traditional strictness analysis systems. This extension is developed with the explicit aim of formally proving soundness of higher-order strictness typing with respect to a natural operational semantics. A key aspect of our approach is the introduction of a proof assistant at an early stage, namely during development of the proof. As such, the theorem prover aids the design of the language theoretic concepts. The new results in combination with their formal proof can be seen as a case study towards the achievement of the long term PoplMark Challenge. The proof framework developed for this case study can furthermore be used in other typing system case studies. •We introduce syntax and semantics of a basic programming language.•We define derivation rules for a higher-order strictness typing system.•We proof soundness of our system with respect to the semantics.•The proof is formalized by using a theorem prover.•In inference algorithm is specified which infers principal strictness types.•An extension of our system with recursive data types is given.</abstract><pub>Elsevier Ltd</pub><doi>10.1016/j.cl.2015.07.004</doi><tpages>15</tpages><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 1477-8424
ispartof Computer languages, systems & structures, 2015-12, Vol.44, p.166-180
issn 1477-8424
1873-6866
language eng
recordid cdi_proquest_miscellaneous_1786202435
source ScienceDirect Journals
subjects Aids
Algorithms
Automated theorem proving
Derivation
Design engineering
Inference
Lambda calculus
Operational semantics
Proving
Semantics
Strictness analysis
Theorem proving
Typing
title Derivation and inference of higher-order strictness types
url http://sfxeu10.hosted.exlibrisgroup.com/loughborough?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-02T16%3A30%3A28IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Derivation%20and%20inference%20of%20higher-order%20strictness%20types&rft.jtitle=Computer%20languages,%20systems%20&%20structures&rft.au=Smetsers,%20Sjaak&rft.date=2015-12-01&rft.volume=44&rft.spage=166&rft.epage=180&rft.pages=166-180&rft.issn=1477-8424&rft.eissn=1873-6866&rft_id=info:doi/10.1016/j.cl.2015.07.004&rft_dat=%3Cproquest_cross%3E1786202435%3C/proquest_cross%3E%3Cgrp_id%3Ecdi_FETCH-LOGICAL-c392t-b845054683dc08fbe4363aa40a27ed9cd9fcf8c0aa740ee5cab19b854531c5cb3%3C/grp_id%3E%3Coa%3E%3C/oa%3E%3Curl%3E%3C/url%3E&rft_id=info:oai/&rft_pqid=1786202435&rft_id=info:pmid/&rfr_iscdi=true