Compiling Constraint Handling Rules into Prolog with Attributed Variables View Full Text


Ontology type: schema:Chapter      Open Access: True


Chapter Info

DATE

1999

AUTHORS

Christian Holzbaur , Thom Frühwirth

ABSTRACT

We introduce the most recent and advanced implementation of constraint handling rules (CHR) in a logic programming language, which improves both on previous implementations (in terms of completeness, flexibility and efficiency) and on the principles that should guide such a Prolog implementation consisting of a runtime system and a compiler. The runtime system utilizes attributed variables for the realization of the constraint store with efficient retrieval and update mechanisms. Rules describing the interactions between constraints are compiled into Prolog clauses by a multi-phase compiler, the core of which comprises a small number of compact code generating templates in the form of definite clause grammar rules. More... »

PAGES

117-133

References to SciGraph publications

  • 1990. A new data structure for implementing extensions to Prolog in PROGRAMMING LANGUAGE IMPLEMENTATION AND LOGIC PROGRAMMING
  • 1992. Metastructures vs. attributed variables in the context of extensible unification in PROGRAMMING LANGUAGE IMPLEMENTATION AND LOGIC PROGRAMMING
  • Book

    TITLE

    Principles and Practice of Declarative Programming

    ISBN

    978-3-540-66540-3
    978-3-540-48164-5

    Identifiers

    URI

    http://scigraph.springernature.com/pub.10.1007/10704567_7

    DOI

    http://dx.doi.org/10.1007/10704567_7

    DIMENSIONS

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


    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/0803", 
            "inDefinedTermSet": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/", 
            "name": "Computer Software", 
            "type": "DefinedTerm"
          }, 
          {
            "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"
          }
        ], 
        "author": [
          {
            "affiliation": {
              "alternateName": "University of Vienna", 
              "id": "https://www.grid.ac/institutes/grid.10420.37", 
              "name": [
                "Department of Medical Cybernetics and Artificial Intelligence, University of Vienna, Freyung 6, A-1010\u00a0Vienna, Austria"
              ], 
              "type": "Organization"
            }, 
            "familyName": "Holzbaur", 
            "givenName": "Christian", 
            "id": "sg:person.015052747435.75", 
            "sameAs": [
              "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.015052747435.75"
            ], 
            "type": "Person"
          }, 
          {
            "affiliation": {
              "alternateName": "Ludwig Maximilian University of Munich", 
              "id": "https://www.grid.ac/institutes/grid.5252.0", 
              "name": [
                "Department of Computer Science, Ludwig-Maximilians-University, Oettingenstrasse 67, D-80538\u00a0Munich, Germany"
              ], 
              "type": "Organization"
            }, 
            "familyName": "Fr\u00fchwirth", 
            "givenName": "Thom", 
            "id": "sg:person.013750414271.15", 
            "sameAs": [
              "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.013750414271.15"
            ], 
            "type": "Person"
          }
        ], 
        "citation": [
          {
            "id": "https://doi.org/10.1016/s0743-1066(98)10005-5", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1000275719"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "https://doi.org/10.1002/spe.4380231204", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1003318000"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "https://doi.org/10.1145/72551.72555", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1003422792"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "https://doi.org/10.1016/0743-1066(94)90033-7", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1004885944"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "sg:pub.10.1007/bfb0024181", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1009831311", 
              "https://doi.org/10.1007/bfb0024181"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "https://doi.org/10.1016/0004-3702(92)90006-j", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1042116181"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "https://doi.org/10.1016/0004-3702(92)90006-j", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1042116181"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "https://doi.org/10.1016/0167-739x(88)90012-x", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1050586642"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "https://doi.org/10.1016/0167-739x(88)90012-x", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1050586642"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "sg:pub.10.1007/3-540-55844-6_141", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1051510308", 
              "https://doi.org/10.1007/3-540-55844-6_141"
            ], 
            "type": "CreativeWork"
          }
        ], 
        "datePublished": "1999", 
        "datePublishedReg": "1999-01-01", 
        "description": "We introduce the most recent and advanced implementation of constraint handling rules (CHR) in a logic programming language, which improves both on previous implementations (in terms of completeness, flexibility and efficiency) and on the principles that should guide such a Prolog implementation consisting of a runtime system and a compiler. The runtime system utilizes attributed variables for the realization of the constraint store with efficient retrieval and update mechanisms. Rules describing the interactions between constraints are compiled into Prolog clauses by a multi-phase compiler, the core of which comprises a small number of compact code generating templates in the form of definite clause grammar rules.", 
        "editor": [
          {
            "familyName": "Nadathur", 
            "givenName": "Gopalan", 
            "type": "Person"
          }
        ], 
        "genre": "chapter", 
        "id": "sg:pub.10.1007/10704567_7", 
        "inLanguage": [
          "en"
        ], 
        "isAccessibleForFree": true, 
        "isPartOf": {
          "isbn": [
            "978-3-540-66540-3", 
            "978-3-540-48164-5"
          ], 
          "name": "Principles and Practice of Declarative Programming", 
          "type": "Book"
        }, 
        "name": "Compiling Constraint Handling Rules into Prolog with Attributed Variables", 
        "pagination": "117-133", 
        "productId": [
          {
            "name": "doi", 
            "type": "PropertyValue", 
            "value": [
              "10.1007/10704567_7"
            ]
          }, 
          {
            "name": "readcube_id", 
            "type": "PropertyValue", 
            "value": [
              "703085d49369066fb3efb458220afedb46ae6384ced71f0e2a687e4dfe6e8a84"
            ]
          }, 
          {
            "name": "dimensions_id", 
            "type": "PropertyValue", 
            "value": [
              "pub.1023548039"
            ]
          }
        ], 
        "publisher": {
          "location": "Berlin, Heidelberg", 
          "name": "Springer Berlin Heidelberg", 
          "type": "Organisation"
        }, 
        "sameAs": [
          "https://doi.org/10.1007/10704567_7", 
          "https://app.dimensions.ai/details/publication/pub.1023548039"
        ], 
        "sdDataset": "chapters", 
        "sdDatePublished": "2019-04-15T12:31", 
        "sdLicense": "https://scigraph.springernature.com/explorer/license/", 
        "sdPublisher": {
          "name": "Springer Nature - SN SciGraph project", 
          "type": "Organization"
        }, 
        "sdSource": "s3://com-uberresearch-data-dimensions-target-20181106-alternative/cleanup/v134/2549eaecd7973599484d7c17b260dba0a4ecb94b/merge/v9/a6c9fde33151104705d4d7ff012ea9563521a3ce/jats-lookup/v90/0000000001_0000000264/records_8663_00000257.jsonl", 
        "type": "Chapter", 
        "url": "http://link.springer.com/10.1007/10704567_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/10704567_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/10704567_7'

    Turtle is a human-readable linked data format.

    curl -H 'Accept: text/turtle' 'https://scigraph.springernature.com/pub.10.1007/10704567_7'

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

    curl -H 'Accept: application/rdf+xml' 'https://scigraph.springernature.com/pub.10.1007/10704567_7'


     

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

    101 TRIPLES      23 PREDICATES      35 URIs      20 LITERALS      8 BLANK NODES

    Subject Predicate Object
    1 sg:pub.10.1007/10704567_7 schema:about anzsrc-for:08
    2 anzsrc-for:0803
    3 schema:author Nf5d9915e7f0a46618495eb911e46e091
    4 schema:citation sg:pub.10.1007/3-540-55844-6_141
    5 sg:pub.10.1007/bfb0024181
    6 https://doi.org/10.1002/spe.4380231204
    7 https://doi.org/10.1016/0004-3702(92)90006-j
    8 https://doi.org/10.1016/0167-739x(88)90012-x
    9 https://doi.org/10.1016/0743-1066(94)90033-7
    10 https://doi.org/10.1016/s0743-1066(98)10005-5
    11 https://doi.org/10.1145/72551.72555
    12 schema:datePublished 1999
    13 schema:datePublishedReg 1999-01-01
    14 schema:description We introduce the most recent and advanced implementation of constraint handling rules (CHR) in a logic programming language, which improves both on previous implementations (in terms of completeness, flexibility and efficiency) and on the principles that should guide such a Prolog implementation consisting of a runtime system and a compiler. The runtime system utilizes attributed variables for the realization of the constraint store with efficient retrieval and update mechanisms. Rules describing the interactions between constraints are compiled into Prolog clauses by a multi-phase compiler, the core of which comprises a small number of compact code generating templates in the form of definite clause grammar rules.
    15 schema:editor Nf9ca640476fe4f5c997274548476cc3b
    16 schema:genre chapter
    17 schema:inLanguage en
    18 schema:isAccessibleForFree true
    19 schema:isPartOf Nb965bd66c6cd4de4a72cee53cd20bfbe
    20 schema:name Compiling Constraint Handling Rules into Prolog with Attributed Variables
    21 schema:pagination 117-133
    22 schema:productId N59d8cc0a52974c4eb22560f2c8c216ce
    23 N89f9790a9c3744c78bcd52e06fec9b18
    24 Nc63758167e4c44cdac2b19981e7c3e88
    25 schema:publisher N692acaf03f7047e38be77d70f36e58d5
    26 schema:sameAs https://app.dimensions.ai/details/publication/pub.1023548039
    27 https://doi.org/10.1007/10704567_7
    28 schema:sdDatePublished 2019-04-15T12:31
    29 schema:sdLicense https://scigraph.springernature.com/explorer/license/
    30 schema:sdPublisher Ne18b58c2314543b6b25e4d5771369d67
    31 schema:url http://link.springer.com/10.1007/10704567_7
    32 sgo:license sg:explorer/license/
    33 sgo:sdDataset chapters
    34 rdf:type schema:Chapter
    35 N2532097b338b4d63b5259c7c630ad05b schema:familyName Nadathur
    36 schema:givenName Gopalan
    37 rdf:type schema:Person
    38 N59d8cc0a52974c4eb22560f2c8c216ce schema:name dimensions_id
    39 schema:value pub.1023548039
    40 rdf:type schema:PropertyValue
    41 N5d507e9738924188bf924f1e9067a114 rdf:first sg:person.013750414271.15
    42 rdf:rest rdf:nil
    43 N692acaf03f7047e38be77d70f36e58d5 schema:location Berlin, Heidelberg
    44 schema:name Springer Berlin Heidelberg
    45 rdf:type schema:Organisation
    46 N89f9790a9c3744c78bcd52e06fec9b18 schema:name doi
    47 schema:value 10.1007/10704567_7
    48 rdf:type schema:PropertyValue
    49 Nb965bd66c6cd4de4a72cee53cd20bfbe schema:isbn 978-3-540-48164-5
    50 978-3-540-66540-3
    51 schema:name Principles and Practice of Declarative Programming
    52 rdf:type schema:Book
    53 Nc63758167e4c44cdac2b19981e7c3e88 schema:name readcube_id
    54 schema:value 703085d49369066fb3efb458220afedb46ae6384ced71f0e2a687e4dfe6e8a84
    55 rdf:type schema:PropertyValue
    56 Ne18b58c2314543b6b25e4d5771369d67 schema:name Springer Nature - SN SciGraph project
    57 rdf:type schema:Organization
    58 Nf5d9915e7f0a46618495eb911e46e091 rdf:first sg:person.015052747435.75
    59 rdf:rest N5d507e9738924188bf924f1e9067a114
    60 Nf9ca640476fe4f5c997274548476cc3b rdf:first N2532097b338b4d63b5259c7c630ad05b
    61 rdf:rest rdf:nil
    62 anzsrc-for:08 schema:inDefinedTermSet anzsrc-for:
    63 schema:name Information and Computing Sciences
    64 rdf:type schema:DefinedTerm
    65 anzsrc-for:0803 schema:inDefinedTermSet anzsrc-for:
    66 schema:name Computer Software
    67 rdf:type schema:DefinedTerm
    68 sg:person.013750414271.15 schema:affiliation https://www.grid.ac/institutes/grid.5252.0
    69 schema:familyName Frühwirth
    70 schema:givenName Thom
    71 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.013750414271.15
    72 rdf:type schema:Person
    73 sg:person.015052747435.75 schema:affiliation https://www.grid.ac/institutes/grid.10420.37
    74 schema:familyName Holzbaur
    75 schema:givenName Christian
    76 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.015052747435.75
    77 rdf:type schema:Person
    78 sg:pub.10.1007/3-540-55844-6_141 schema:sameAs https://app.dimensions.ai/details/publication/pub.1051510308
    79 https://doi.org/10.1007/3-540-55844-6_141
    80 rdf:type schema:CreativeWork
    81 sg:pub.10.1007/bfb0024181 schema:sameAs https://app.dimensions.ai/details/publication/pub.1009831311
    82 https://doi.org/10.1007/bfb0024181
    83 rdf:type schema:CreativeWork
    84 https://doi.org/10.1002/spe.4380231204 schema:sameAs https://app.dimensions.ai/details/publication/pub.1003318000
    85 rdf:type schema:CreativeWork
    86 https://doi.org/10.1016/0004-3702(92)90006-j schema:sameAs https://app.dimensions.ai/details/publication/pub.1042116181
    87 rdf:type schema:CreativeWork
    88 https://doi.org/10.1016/0167-739x(88)90012-x schema:sameAs https://app.dimensions.ai/details/publication/pub.1050586642
    89 rdf:type schema:CreativeWork
    90 https://doi.org/10.1016/0743-1066(94)90033-7 schema:sameAs https://app.dimensions.ai/details/publication/pub.1004885944
    91 rdf:type schema:CreativeWork
    92 https://doi.org/10.1016/s0743-1066(98)10005-5 schema:sameAs https://app.dimensions.ai/details/publication/pub.1000275719
    93 rdf:type schema:CreativeWork
    94 https://doi.org/10.1145/72551.72555 schema:sameAs https://app.dimensions.ai/details/publication/pub.1003422792
    95 rdf:type schema:CreativeWork
    96 https://www.grid.ac/institutes/grid.10420.37 schema:alternateName University of Vienna
    97 schema:name Department of Medical Cybernetics and Artificial Intelligence, University of Vienna, Freyung 6, A-1010 Vienna, Austria
    98 rdf:type schema:Organization
    99 https://www.grid.ac/institutes/grid.5252.0 schema:alternateName Ludwig Maximilian University of Munich
    100 schema:name Department of Computer Science, Ludwig-Maximilians-University, Oettingenstrasse 67, D-80538 Munich, Germany
    101 rdf:type schema:Organization
     




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


    ...