The Refined Operational Semantics of Constraint Handling Rules View Full Text


Ontology type: schema:Chapter     


Chapter Info

DATE

2004

AUTHORS

Gregory J. Duck , Peter J. Stuckey , María García de la Banda , Christian Holzbaur

ABSTRACT

Constraint Handling Rules (CHRs) are a high-level rule-based programming language commonly used to write constraint solvers. The theoretical operational semantics for CHRs is highly non-deterministic and relies on writing confluent programs to have a meaningful behaviour. Implementations of CHRs use an operational semantics which is considerably finer than the theoretical operational semantics, but is still non-deterministic (from the user’s perspective). This paper formally defines this refined operational semantics and proves it implements the theoretical operational semantics. It also shows how to create a (partial) confluence checker capable of detecting programs which are confluent under this semantics, but not under the theoretical operational semantics. This supports the use of new idioms in CHR programs. More... »

PAGES

90-104

Identifiers

URI

http://scigraph.springernature.com/pub.10.1007/978-3-540-27775-0_7

DOI

http://dx.doi.org/10.1007/978-3-540-27775-0_7

DIMENSIONS

https://app.dimensions.ai/details/publication/pub.1043968221


Indexing Status Check whether this publication has been indexed by Scopus and Web Of Science using the SN Indexing Status Tool
Incoming Citations Browse incoming citations for this publication using opencitations.net

JSON-LD is the canonical representation for SciGraph data.

TIP: You can open this SciGraph record using an external JSON-LD service: JSON-LD Playground Google SDTT

[
  {
    "@context": "https://springernature.github.io/scigraph/jsonld/sgcontext.json", 
    "about": [
      {
        "id": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/08", 
        "inDefinedTermSet": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/", 
        "name": "Information and Computing Sciences", 
        "type": "DefinedTerm"
      }, 
      {
        "id": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/0801", 
        "inDefinedTermSet": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/", 
        "name": "Artificial Intelligence and Image Processing", 
        "type": "DefinedTerm"
      }
    ], 
    "author": [
      {
        "affiliation": {
          "alternateName": "Department of Computer Science and Software Engineering, The University of Melbourne, 3010, Vic., Australia", 
          "id": "http://www.grid.ac/institutes/grid.1008.9", 
          "name": [
            "Department of Computer Science and Software Engineering, The University of Melbourne, 3010, Vic., Australia"
          ], 
          "type": "Organization"
        }, 
        "familyName": "Duck", 
        "givenName": "Gregory J.", 
        "id": "sg:person.014415213001.27", 
        "sameAs": [
          "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.014415213001.27"
        ], 
        "type": "Person"
      }, 
      {
        "affiliation": {
          "alternateName": "Department of Computer Science and Software Engineering, The University of Melbourne, 3010, Vic., Australia", 
          "id": "http://www.grid.ac/institutes/grid.1008.9", 
          "name": [
            "Department of Computer Science and Software Engineering, The University of Melbourne, 3010, Vic., Australia"
          ], 
          "type": "Organization"
        }, 
        "familyName": "Stuckey", 
        "givenName": "Peter J.", 
        "id": "sg:person.012243374043.93", 
        "sameAs": [
          "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.012243374043.93"
        ], 
        "type": "Person"
      }, 
      {
        "affiliation": {
          "alternateName": "School of Computer Science and Software Engineering, Monash University, 3800, Vic., Australia", 
          "id": "http://www.grid.ac/institutes/grid.1002.3", 
          "name": [
            "School of Computer Science and Software Engineering, Monash University, 3800, Vic., Australia"
          ], 
          "type": "Organization"
        }, 
        "familyName": "de la Banda", 
        "givenName": "Mar\u00eda Garc\u00eda", 
        "id": "sg:person.016350443307.93", 
        "sameAs": [
          "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.016350443307.93"
        ], 
        "type": "Person"
      }, 
      {
        "familyName": "Holzbaur", 
        "givenName": "Christian", 
        "id": "sg:person.015052747435.75", 
        "sameAs": [
          "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.015052747435.75"
        ], 
        "type": "Person"
      }
    ], 
    "datePublished": "2004", 
    "datePublishedReg": "2004-01-01", 
    "description": "Constraint Handling Rules (CHRs) are a high-level rule-based programming language commonly used to write constraint solvers. The theoretical operational semantics for CHRs is highly non-deterministic and relies on writing confluent programs to have a meaningful behaviour. Implementations of CHRs use an operational semantics which is considerably finer than the theoretical operational semantics, but is still non-deterministic (from the user\u2019s perspective). This paper formally defines this refined operational semantics and proves it implements the theoretical operational semantics. It also shows how to create a (partial) confluence checker capable of detecting programs which are confluent under this semantics, but not under the theoretical operational semantics. This supports the use of new idioms in CHR programs.", 
    "editor": [
      {
        "familyName": "Demoen", 
        "givenName": "Bart", 
        "type": "Person"
      }, 
      {
        "familyName": "Lifschitz", 
        "givenName": "Vladimir", 
        "type": "Person"
      }
    ], 
    "genre": "chapter", 
    "id": "sg:pub.10.1007/978-3-540-27775-0_7", 
    "inLanguage": "en", 
    "isAccessibleForFree": false, 
    "isPartOf": {
      "isbn": [
        "978-3-540-22671-0", 
        "978-3-540-27775-0"
      ], 
      "name": "Logic Programming", 
      "type": "Book"
    }, 
    "keywords": [
      "theoretical operational semantics", 
      "Constraint Handling Rules", 
      "operational semantics", 
      "refined operational semantics", 
      "high-level rule-based programming language", 
      "Handling Rules", 
      "rule-based programming language", 
      "programming language", 
      "constraint solver", 
      "CHR programs", 
      "semantics", 
      "meaningful behavior", 
      "checker", 
      "rules", 
      "implementation", 
      "language", 
      "solver", 
      "program", 
      "new idioms", 
      "idioms", 
      "use", 
      "behavior", 
      "paper", 
      "confluent programs", 
      "Implementations of CHRs", 
      "confluence checker"
    ], 
    "name": "The Refined Operational Semantics of Constraint Handling Rules", 
    "pagination": "90-104", 
    "productId": [
      {
        "name": "dimensions_id", 
        "type": "PropertyValue", 
        "value": [
          "pub.1043968221"
        ]
      }, 
      {
        "name": "doi", 
        "type": "PropertyValue", 
        "value": [
          "10.1007/978-3-540-27775-0_7"
        ]
      }
    ], 
    "publisher": {
      "name": "Springer Nature", 
      "type": "Organisation"
    }, 
    "sameAs": [
      "https://doi.org/10.1007/978-3-540-27775-0_7", 
      "https://app.dimensions.ai/details/publication/pub.1043968221"
    ], 
    "sdDataset": "chapters", 
    "sdDatePublished": "2021-12-01T20:02", 
    "sdLicense": "https://scigraph.springernature.com/explorer/license/", 
    "sdPublisher": {
      "name": "Springer Nature - SN SciGraph project", 
      "type": "Organization"
    }, 
    "sdSource": "s3://com-springernature-scigraph/baseset/20211201/entities/gbq_results/chapter/chapter_267.jsonl", 
    "type": "Chapter", 
    "url": "https://doi.org/10.1007/978-3-540-27775-0_7"
  }
]
 

Download the RDF metadata as:  json-ld nt turtle xml License info

HOW TO GET THIS DATA PROGRAMMATICALLY:

JSON-LD is a popular format for linked data which is fully compatible with JSON.

curl -H 'Accept: application/ld+json' 'https://scigraph.springernature.com/pub.10.1007/978-3-540-27775-0_7'

N-Triples is a line-based linked data format ideal for batch operations.

curl -H 'Accept: application/n-triples' 'https://scigraph.springernature.com/pub.10.1007/978-3-540-27775-0_7'

Turtle is a human-readable linked data format.

curl -H 'Accept: text/turtle' 'https://scigraph.springernature.com/pub.10.1007/978-3-540-27775-0_7'

RDF/XML is a standard XML format for linked data.

curl -H 'Accept: application/rdf+xml' 'https://scigraph.springernature.com/pub.10.1007/978-3-540-27775-0_7'


 

This table displays all metadata directly associated to this object as RDF triples.

114 TRIPLES      23 PREDICATES      52 URIs      45 LITERALS      7 BLANK NODES

Subject Predicate Object
1 sg:pub.10.1007/978-3-540-27775-0_7 schema:about anzsrc-for:08
2 anzsrc-for:0801
3 schema:author N108ccbe9a57647d68e6b6dfb11b97642
4 schema:datePublished 2004
5 schema:datePublishedReg 2004-01-01
6 schema:description Constraint Handling Rules (CHRs) are a high-level rule-based programming language commonly used to write constraint solvers. The theoretical operational semantics for CHRs is highly non-deterministic and relies on writing confluent programs to have a meaningful behaviour. Implementations of CHRs use an operational semantics which is considerably finer than the theoretical operational semantics, but is still non-deterministic (from the user’s perspective). This paper formally defines this refined operational semantics and proves it implements the theoretical operational semantics. It also shows how to create a (partial) confluence checker capable of detecting programs which are confluent under this semantics, but not under the theoretical operational semantics. This supports the use of new idioms in CHR programs.
7 schema:editor N1c89e1ff8aed451f97eba80dd1b0f379
8 schema:genre chapter
9 schema:inLanguage en
10 schema:isAccessibleForFree false
11 schema:isPartOf N5d0a17470df645cb91f8a96030d25fb9
12 schema:keywords CHR programs
13 Constraint Handling Rules
14 Handling Rules
15 Implementations of CHRs
16 behavior
17 checker
18 confluence checker
19 confluent programs
20 constraint solver
21 high-level rule-based programming language
22 idioms
23 implementation
24 language
25 meaningful behavior
26 new idioms
27 operational semantics
28 paper
29 program
30 programming language
31 refined operational semantics
32 rule-based programming language
33 rules
34 semantics
35 solver
36 theoretical operational semantics
37 use
38 schema:name The Refined Operational Semantics of Constraint Handling Rules
39 schema:pagination 90-104
40 schema:productId N51483ded820a41368c3d7c255c582e38
41 Nc16118503f454c689b252f21c83bc53c
42 schema:publisher Nf590801fd58a431b9a408f5731f01d32
43 schema:sameAs https://app.dimensions.ai/details/publication/pub.1043968221
44 https://doi.org/10.1007/978-3-540-27775-0_7
45 schema:sdDatePublished 2021-12-01T20:02
46 schema:sdLicense https://scigraph.springernature.com/explorer/license/
47 schema:sdPublisher Ne62007f933264afc98f87ca893fbe0ef
48 schema:url https://doi.org/10.1007/978-3-540-27775-0_7
49 sgo:license sg:explorer/license/
50 sgo:sdDataset chapters
51 rdf:type schema:Chapter
52 N108ccbe9a57647d68e6b6dfb11b97642 rdf:first sg:person.014415213001.27
53 rdf:rest N9873e83c63e548a2ac44f361e2cefcd6
54 N1c89e1ff8aed451f97eba80dd1b0f379 rdf:first Nda5d3247c56146eab327390d9f935e89
55 rdf:rest N4760e1dfa3d2412b932c648c31ff2628
56 N4760e1dfa3d2412b932c648c31ff2628 rdf:first N802dfc194faa4c0abadfbe5a0ce201dc
57 rdf:rest rdf:nil
58 N51483ded820a41368c3d7c255c582e38 schema:name doi
59 schema:value 10.1007/978-3-540-27775-0_7
60 rdf:type schema:PropertyValue
61 N5d0a17470df645cb91f8a96030d25fb9 schema:isbn 978-3-540-22671-0
62 978-3-540-27775-0
63 schema:name Logic Programming
64 rdf:type schema:Book
65 N659ee15e38254580ad539598fe804420 rdf:first sg:person.015052747435.75
66 rdf:rest rdf:nil
67 N802dfc194faa4c0abadfbe5a0ce201dc schema:familyName Lifschitz
68 schema:givenName Vladimir
69 rdf:type schema:Person
70 N86892f2ca98f43ba8b49538c9dfa890f rdf:first sg:person.016350443307.93
71 rdf:rest N659ee15e38254580ad539598fe804420
72 N9873e83c63e548a2ac44f361e2cefcd6 rdf:first sg:person.012243374043.93
73 rdf:rest N86892f2ca98f43ba8b49538c9dfa890f
74 Nc16118503f454c689b252f21c83bc53c schema:name dimensions_id
75 schema:value pub.1043968221
76 rdf:type schema:PropertyValue
77 Nda5d3247c56146eab327390d9f935e89 schema:familyName Demoen
78 schema:givenName Bart
79 rdf:type schema:Person
80 Ne62007f933264afc98f87ca893fbe0ef schema:name Springer Nature - SN SciGraph project
81 rdf:type schema:Organization
82 Nf590801fd58a431b9a408f5731f01d32 schema:name Springer Nature
83 rdf:type schema:Organisation
84 anzsrc-for:08 schema:inDefinedTermSet anzsrc-for:
85 schema:name Information and Computing Sciences
86 rdf:type schema:DefinedTerm
87 anzsrc-for:0801 schema:inDefinedTermSet anzsrc-for:
88 schema:name Artificial Intelligence and Image Processing
89 rdf:type schema:DefinedTerm
90 sg:person.012243374043.93 schema:affiliation grid-institutes:grid.1008.9
91 schema:familyName Stuckey
92 schema:givenName Peter J.
93 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.012243374043.93
94 rdf:type schema:Person
95 sg:person.014415213001.27 schema:affiliation grid-institutes:grid.1008.9
96 schema:familyName Duck
97 schema:givenName Gregory J.
98 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.014415213001.27
99 rdf:type schema:Person
100 sg:person.015052747435.75 schema:familyName Holzbaur
101 schema:givenName Christian
102 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.015052747435.75
103 rdf:type schema:Person
104 sg:person.016350443307.93 schema:affiliation grid-institutes:grid.1002.3
105 schema:familyName de la Banda
106 schema:givenName María García
107 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.016350443307.93
108 rdf:type schema:Person
109 grid-institutes:grid.1002.3 schema:alternateName School of Computer Science and Software Engineering, Monash University, 3800, Vic., Australia
110 schema:name School of Computer Science and Software Engineering, Monash University, 3800, Vic., Australia
111 rdf:type schema:Organization
112 grid-institutes:grid.1008.9 schema:alternateName Department of Computer Science and Software Engineering, The University of Melbourne, 3010, Vic., Australia
113 schema:name Department of Computer Science and Software Engineering, The University of Melbourne, 3010, Vic., Australia
114 rdf:type schema:Organization
 




Preview window. Press ESC to close (or click here)


...