Typing constraint logic programs
We present a prescriptive type system with parametric polymorphism and subtyping for constraint logic programs. The aim of this type system is to detect programming errors statically. It introduces a type discipline for constraint logic programs and modules, while maintaining the capabilities of per...
Saved in:
| Published in: | Theory and practice of logic programming Vol. 1; no. 6; pp. 751 - 777 |
|---|---|
| Main Authors: | , |
| Format: | Journal Article |
| Language: | English |
| Published: |
Cambridge, UK
Cambridge University Press
01.11.2001
|
| Subjects: | |
| ISSN: | 1471-0684, 1475-3081 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Abstract | We present a prescriptive type system with parametric polymorphism and subtyping for
constraint logic programs. The aim of this type system is to detect programming errors
statically. It introduces a type discipline for constraint logic programs and modules, while
maintaining the capabilities of performing the usual coercions between constraint domains,
and of typing meta-programming predicates, thanks to the exibility of subtyping. The
property of subject reduction expresses the consistency of a prescriptive type system w.r.t.
the execution model: if a program is ‘well-typed’, then all derivations starting from a
‘well-typed’ goal are again ‘well-typed’. That property is proved w.r.t. the abstract execution
model of constraint programming which proceeds by accumulation of constraints only, and
w.r.t. an enriched execution model with type constraints for substitutions. We describe our
implementation of the system for type checking and type inference. We report our experimental
results on type checking ISO-Prolog, the (constraint) libraries of Sicstus Prolog and other
Prolog programs. |
|---|---|
| AbstractList | We present a prescriptive type system with parametric polymorphism and subtyping for constraint logic programs. The aim of this type system is to detect programming errors statically. It introduces a type discipline for constraint logic programs and modules, while maintaining the capabilities of performing the usual coercions between constraint domains, and of typing meta-programming predicates, thanks to the exibility of subtyping. The property of subject reduction expresses the consistency of a prescriptive type system w.r.t. the execution model: if a program is 'well-typed', then all derivations starting from a 'well-typed' goal are again 'well-typed'. That property is proved w.r.t. the abstract execution model of constraint programming which proceeds by accumulation of constraints only, and w.r.t. an enriched execution model with type constraints for substitutions. We describe our implementation of the system for type checking and type inference. We report our experimental results on type checking ISO-Prolog, the (constraint) libraries of Sicstus Prolog and other Prolog programs. [PUBLICATION ABSTRACT] We present a prescriptive type system with parametric polymorphism and subtyping for constraint logic programs. The aim of this type system is to detect programming errors statically. It introduces a type discipline for constraint logic programs and modules, while maintaining the capabilities of performing the usual coercions between constraint domains, and of typing meta-programming predicates, thanks to the exibility of subtyping. The property of subject reduction expresses the consistency of a prescriptive type system w.r.t. the execution model: if a program is ‘well-typed’, then all derivations starting from a ‘well-typed’ goal are again ‘well-typed’. That property is proved w.r.t. the abstract execution model of constraint programming which proceeds by accumulation of constraints only, and w.r.t. an enriched execution model with type constraints for substitutions. We describe our implementation of the system for type checking and type inference. We report our experimental results on type checking ISO-Prolog, the (constraint) libraries of Sicstus Prolog and other Prolog programs. We present a prescriptive type system with parametric polymorphism and subtyping for constraint logic programs. The aim of this type system is to detect programming errors statically. It introduces a type discipline for constraint logic programs and modules, while maintaining the capabilities of performing the usual coercions between constraint domains, and of typing meta-programming predicates, thanks to the exibility of subtyping. The property of subject reduction expresses the consistency of a prescriptive type system w.r.t. the execution model: if a program is ‘well-typed’, then all derivations starting from a ‘well-typed’ goal are again ‘well-typed’. That property is proved w.r.t. the abstract execution model of constraint programming which proceeds by accumulation of constraints only, and w.r.t. an enriched execution model with type constraints for substitutions. We describe our implementation of the system for type checking and type inference. We report our experimental results on type checking ISO-Prolog, the (constraint) libraries of Sicstus Prolog and other Prolog programs. |
| Author | FAGES, FRANÇOIS COQUERY, EMMANUEL |
| Author_xml | – sequence: 1 givenname: FRANÇOIS surname: FAGES fullname: FAGES, FRANÇOIS email: francois.fages@inria.fr organization: Projet Contraintes, INRIA-Rocquencourt, BP105, 78153 Le Chesnay Cedex, France, (e-mail: francois.fages@inria.fr, emmanuel.coquery@inria.fr) – sequence: 2 givenname: EMMANUEL surname: COQUERY fullname: COQUERY, EMMANUEL email: francois.fages@inria.fr organization: Projet Contraintes, INRIA-Rocquencourt, BP105, 78153 Le Chesnay Cedex, France, (e-mail: francois.fages@inria.fr, emmanuel.coquery@inria.fr) |
| BookMark | eNp9kE1PwzAMhiM0JLbBD-BWcS_EbZp0RzTxJU3iwDhX-awytUlJusP-PSmbhASCky37ffzaXqCZ804jdA34FjCwuzcgDDCtCQaMAQp8huapVOUlrmH2lUM-9S_QIsZd0tCyIHOUbQ-DdW0mvYtj4NaNWedbK7Mh-DbwPl6ic8O7qK9OcYneHx-26-d88_r0sr7f5LIEOuY1xRUIKoVQRkpdVhJzJQWtjGEAtFB1teKCESOVYSTljDBJVF1jsRKK6nKJbo5zk_HHXsex2fl9cMmyKdKBQFYVJBE7imTwMQZtGmlHPlrvpt27BnAzfaP59Y1Ewg9yCLbn4fAvU54Y3otgVau_d_qb-gTEc3Ee |
| CitedBy_id | crossref_primary_10_1017_S1471068407003055 crossref_primary_10_1016_j_tcs_2008_04_024 crossref_primary_10_1016_j_is_2004_03_003 crossref_primary_10_1017_S1471068411000391 crossref_primary_10_1017_S1471068424000206 |
| ContentType | Journal Article |
| Copyright | 2001 Cambridge University Press |
| Copyright_xml | – notice: 2001 Cambridge University Press |
| DBID | AAYXX CITATION 3V. 7SC 7XB 8AL 8FD 8FE 8FG 8FK ABUWG AFKRA ARAPS AZQEC BENPR BGLVJ CCPQU DWQXO GNUQQ HCIFZ JQ2 K7- L7M L~C L~D M0N P5Z P62 PHGZM PHGZT PKEHL PQEST PQGLB PQQKQ PQUKI PRINS Q9U |
| DOI | 10.1017/S1471068401001120 |
| DatabaseName | CrossRef ProQuest Central (Corporate) Computer and Information Systems Abstracts ProQuest Central (purchase pre-March 2016) Computing Database (Alumni Edition) Technology Research Database ProQuest SciTech Collection ProQuest Technology Collection ProQuest Central (Alumni) (purchase pre-March 2016) ProQuest Central (Alumni) ProQuest Central UK/Ireland Advanced Technologies & Computer Science Collection ProQuest Central Essentials ProQuest Central Technology collection ProQuest One Community College ProQuest Central ProQuest Central Student SciTech Premium Collection ProQuest Computer Science Collection Computer Science Database Advanced Technologies Database with Aerospace Computer and Information Systems Abstracts Academic Computer and Information Systems Abstracts Professional Computing Database Advanced Technologies & Aerospace Database ProQuest Advanced Technologies & Aerospace Collection ProQuest Central Premium ProQuest One Academic ProQuest One Academic Middle East (New) ProQuest One Academic Eastern Edition (DO NOT USE) ProQuest One Applied & Life Sciences ProQuest One Academic (retired) ProQuest One Academic UKI Edition ProQuest Central China ProQuest Central Basic |
| DatabaseTitle | CrossRef Computer Science Database ProQuest Central Student Technology Collection Technology Research Database Computer and Information Systems Abstracts – Academic ProQuest One Academic Middle East (New) ProQuest Advanced Technologies & Aerospace Collection ProQuest Central Essentials ProQuest Computer Science Collection Computer and Information Systems Abstracts ProQuest Central (Alumni Edition) SciTech Premium Collection ProQuest One Community College ProQuest Central China ProQuest Central ProQuest One Applied & Life Sciences ProQuest Central Korea ProQuest Central (New) Advanced Technologies Database with Aerospace Advanced Technologies & Aerospace Collection ProQuest Computing ProQuest Central Basic ProQuest Computing (Alumni Edition) ProQuest One Academic Eastern Edition ProQuest Technology Collection ProQuest SciTech Collection Computer and Information Systems Abstracts Professional Advanced Technologies & Aerospace Database ProQuest One Academic UKI Edition ProQuest One Academic ProQuest Central (Alumni) ProQuest One Academic (New) |
| DatabaseTitleList | Computer Science Database CrossRef |
| Database_xml | – sequence: 1 dbid: BENPR name: ProQuest Central url: https://www.proquest.com/central sourceTypes: Aggregation Database |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 1475-3081 |
| EndPage | 777 |
| ExternalDocumentID | 1403128531 10_1017_S1471068401001120 |
| Genre | Feature |
| GroupedDBID | -E. .FH 09C 09E 0E1 0R~ 123 29Q 3V. 4.4 5VS 74X 74Y 7~V 8FE 8FG 8R4 8R5 AAAZR AABES AABWE AACJH AAEED AAFUK AAGFV AAKTX AANRG AARAB AASVR AAUKB AAYOK ABBXD ABITZ ABJNI ABKKG ABMWE ABMYL ABQTM ABQWD ABROB ABTCQ ABUWG ABZCX ACBMC ACCHT ACGFS ACIMK ACNCT ACQFJ ACREK ACUIJ ACUYZ ACWGA ACYZP ACZBM ACZUX ACZWT ADCGK ADDNB ADFEC ADGEJ ADKIL ADOCW ADOVH ADVJH AEBAK AEHGV AEMTW AENEX AENGE AEYYC AFFUJ AFKQG AFKRA AFKSM AFLOS AFLVW AFUTZ AGABE AGBYD AGJUD AGOOT AHQXX AHRGI AIGNW AIHIV AIOIP AISIE AJ7 AJCYY AJPFC AJQAS ALMA_UNASSIGNED_HOLDINGS ALVPG ALWZO AQJOH ARABE ARAPS ATUCA AUXHV AZQEC BBLKV BENPR BGHMG BGLVJ BLZWO BMAJL BPHCQ C0O CAG CBIIA CCPQU CCQAD CCTKK CFAFE CHEAL CJCSC COF CS3 DC4 DOHLZ DU5 DWQXO EBS EJD GNUQQ HCIFZ HG- HST HZ~ I.6 IH6 IOEEP IPYYG IS6 I~P J36 J38 J3A J9A JHPGK JQKCU K6V K7- KCGVB KFECR L98 LW7 M-V M0N NIKVX O9- OK1 OYBOY P2P P62 PQQKQ PROAC PYCCK Q2X RAMDC RCA ROL RR0 S6- S6U SAAAG T9M UT1 WFFJZ WQ3 WXU WXY WYP ZYDXJ AAYXX ABGDZ ABVKB ABVZP ABXHF ACAJB ACDLN AFFHD AFZFC AKMAY CITATION PHGZM PHGZT PQGLB 7SC 7XB 8AL 8FD 8FK JQ2 L7M L~C L~D PKEHL PQEST PQUKI PRINS Q9U |
| ID | FETCH-LOGICAL-c316t-86051b6cbbdfcce35c0adcb65ff71162d859ab74fcdf7459a747c4d880b9bd6e3 |
| IEDL.DBID | K7- |
| ISICitedReferencesCount | 12 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000174320600006&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 1471-0684 |
| IngestDate | Sun Nov 09 08:46:56 EST 2025 Tue Nov 18 21:42:10 EST 2025 Sat Nov 29 04:58:33 EST 2025 Wed Mar 13 05:49:03 EDT 2024 |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | 6 |
| Keywords | Metaprogramming Prolog Constraint logic programming type systems subtyping |
| Language | English |
| License | https://www.cambridge.org/core/terms |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c316t-86051b6cbbdfcce35c0adcb65ff71162d859ab74fcdf7459a747c4d880b9bd6e3 |
| Notes | SourceType-Scholarly Journals-1 ObjectType-Feature-1 content type line 14 |
| PQID | 201714951 |
| PQPubID | 43613 |
| PageCount | 27 |
| ParticipantIDs | proquest_journals_201714951 crossref_citationtrail_10_1017_S1471068401001120 crossref_primary_10_1017_S1471068401001120 cambridge_journals_10_1017_S1471068401001120 |
| PublicationCentury | 2000 |
| PublicationDate | 2001-11-01 |
| PublicationDateYYYYMMDD | 2001-11-01 |
| PublicationDate_xml | – month: 11 year: 2001 text: 2001-11-01 day: 01 |
| PublicationDecade | 2000 |
| PublicationPlace | Cambridge, UK |
| PublicationPlace_xml | – name: Cambridge, UK – name: Cambridge |
| PublicationTitle | Theory and practice of logic programming |
| PublicationTitleAlternate | Theory and Practice of Logic Programming |
| PublicationYear | 2001 |
| Publisher | Cambridge University Press |
| Publisher_xml | – name: Cambridge University Press |
| SSID | ssj0016324 |
| Score | 1.6191076 |
| Snippet | We present a prescriptive type system with parametric polymorphism and subtyping for
constraint logic programs. The aim of this type system is to detect... We present a prescriptive type system with parametric polymorphism and subtyping for constraint logic programs. The aim of this type system is to detect... |
| SourceID | proquest crossref cambridge |
| SourceType | Aggregation Database Enrichment Source Index Database Publisher |
| StartPage | 751 |
| Title | Typing constraint logic programs |
| URI | https://www.cambridge.org/core/product/identifier/S1471068401001120/type/journal_article https://www.proquest.com/docview/201714951 |
| Volume | 1 |
| WOSCitedRecordID | wos000174320600006&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVPQU databaseName: Advanced Technologies & Aerospace Database customDbUrl: eissn: 1475-3081 dateEnd: 20241207 omitProxy: false ssIdentifier: ssj0016324 issn: 1471-0684 databaseCode: P5Z dateStart: 20010101 isFulltext: true titleUrlDefault: https://search.proquest.com/hightechjournals providerName: ProQuest – providerCode: PRVPQU databaseName: Computer Science Database customDbUrl: eissn: 1475-3081 dateEnd: 20241207 omitProxy: false ssIdentifier: ssj0016324 issn: 1471-0684 databaseCode: K7- dateStart: 20010101 isFulltext: true titleUrlDefault: http://search.proquest.com/compscijour providerName: ProQuest – providerCode: PRVPQU databaseName: ProQuest Central customDbUrl: eissn: 1475-3081 dateEnd: 20241207 omitProxy: false ssIdentifier: ssj0016324 issn: 1471-0684 databaseCode: BENPR dateStart: 20010101 isFulltext: true titleUrlDefault: https://www.proquest.com/central providerName: ProQuest |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwpV3NS8MwFH_o5sGL8xPndPTgSQz0I03ak6hsCMIYojC8lOSlBUG2uVb_fpM07RjCLl5KSRtI32de38v7AVyjUkJQzohAGRJKU0oSxihRSSxEJCktct-CTfDJJJnN0qmrzSldWWVjE62hVgs0_8h1kG6guvV-4G75RQxolEmuOgSNXegGYRgYMX_mpE0imE7k9nARN8U9CW2SmqZjtBk0Y77pQRQYtO91a4VNF7Vpoa3bGff-ueBDOHD7Te--FpAj2Mnnx9BrsBw8p9on4OmAVHsxD81-0cBGVJ61ip4r4CpP4W08en18Ig49gWAUsEqTXOubZCilKhDzKEZfKJQsLgoeBCzU3EiF5LRAVXCq73VggVRpfZapVCyPzqAzX8zzc_DSKFGYsAC1s6dxwRLhq1zoSEXJWHGa9uG2JV7mdKDM6voxnv2hdR_8hr4Zuk7k5ss-t025aacs6zYc214eNBxZr6Zlx8XWpwPYt1Vm9rThJXSq1Xd-BXv4U32UqyF0H0aT6cvQypm-TuP3X-pj1Io |
| linkProvider | ProQuest |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMw1V1LS8NAEB5qFfRifWKtjxz0Igby2GySg4j4oKW19FCheIn7CgjS1jYq_ij_o7N5lSL01oO3sMmGSWZ2Hjuz8wGcCSkZIz41meCOSUhIzIBSYsrAY8zlhMTKSsEm_G43GAzCXgV-irMwuqyy0ImpopYjoffIMUjXUN3oD1yP300NGqWTqwWCRiYVbfX9hRHb9Kp1h-w9d5yH-_5t08xBBUzh2jRBSlAMORWcy1gI5XrCYlJw6sWxb9vUQSJDxn0SCxn7BK_R3xZEopjzkEuqXHzvCqwSgrESLp-e91wmLXTn8_Qwk6-LiQJSJFF1h2o9qMcs3fPI1ujis1YO8yZx3iKkZu6h9s9-0BZs5v60cZMtgG2oqOEO1AqsCiNXXbtgYMCNVtoQ2h_WsBiJkWp9Iy9Qm-7B01Lo3IfqcDRUB2CEbiBFQG2BzgzxYhowSyqGkZjknvRJWIfLkllRvsanUVYf50d_eFsHq-BnJPJO6_rL3hZNuSinjLM2I4sebhQSMKOmZP_hwrunsN7sP3aiTqvbbsBGWlGXnqw8gmoy-VDHsCY-k9fp5CSVbQNeli0rv9YTMn4 |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Typing+constraint+logic+programs&rft.jtitle=Theory+and+practice+of+logic+programming&rft.au=FAGES%2C+FRAN%C3%87OIS&rft.au=COQUERY%2C+EMMANUEL&rft.date=2001-11-01&rft.pub=Cambridge+University+Press&rft.issn=1471-0684&rft.eissn=1475-3081&rft.volume=1&rft.issue=6&rft.spage=751&rft.epage=777&rft_id=info:doi/10.1017%2FS1471068401001120&rft.externalDocID=10_1017_S1471068401001120 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1471-0684&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1471-0684&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1471-0684&client=summon |