Zum Inhalt
HALOWERK

Technische Prüfungen & Formate

F TD2000 DOCUMENTS 13 / iso prolog finite sld unification backtracking cut solutions

Reconstruct finite Prolog SLD unification, clause search/backtracking and cut-scoped solutions. Reconstruct the fully typed result and compare its complete canonical SHA256 claim.

POST https://detect.halowerk.com/v1/F-TD2000-DOCUMENTS-13/iso-prolog-finite-sld-unification-backtracking-cut-solutions

Eingaben

Felder des veröffentlichten Eingabeschemas
FeldTypPflichtBeschreibung
artifactobjectJa
Vollständiges Eingabeschema anzeigen
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "artifact"
  ],
  "properties": {
    "artifact": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "prolog"
      ],
      "properties": {
        "prolog": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "data",
            "claim"
          ],
          "properties": {
            "data": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "terms",
                "clauses",
                "query",
                "report_variables"
              ],
              "properties": {
                "terms": {
                  "type": "array",
                  "items": {
                    "anyOf": [
                      {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "id",
                          "kind",
                          "name"
                        ],
                        "properties": {
                          "id": {
                            "$ref": "#/properties/artifact/%24defs/s0"
                          },
                          "kind": {
                            "enum": [
                              "variable"
                            ]
                          },
                          "name": {
                            "$ref": "#/properties/artifact/%24defs/s0"
                          }
                        }
                      },
                      {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "id",
                          "kind",
                          "name"
                        ],
                        "properties": {
                          "id": {
                            "$ref": "#/properties/artifact/%24defs/s0"
                          },
                          "kind": {
                            "enum": [
                              "atom"
                            ]
                          },
                          "name": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 64
                          }
                        }
                      },
                      {
                        "type": "object",
                        "additionalProperties": false,
                        "required": [
                          "id",
                          "kind",
                          "name",
                          "arguments"
                        ],
                        "properties": {
                          "id": {
                            "$ref": "#/properties/artifact/%24defs/s0"
                          },
                          "kind": {
                            "enum": [
                              "compound"
                            ]
                          },
                          "name": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 64
                          },
                          "arguments": {
                            "type": "array",
                            "items": {
                              "$ref": "#/properties/artifact/%24defs/s0"
                            },
                            "minItems": 1,
                            "maxItems": 8
                          }
                        }
                      }
                    ]
                  },
                  "minItems": 1,
                  "maxItems": 96
                },
                "clauses": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "head",
                      "body"
                    ],
                    "properties": {
                      "head": {
                        "$ref": "#/properties/artifact/%24defs/s0"
                      },
                      "body": {
                        "$ref": "#/properties/artifact/%24defs/s1"
                      }
                    }
                  },
                  "minItems": 0,
                  "maxItems": 32
                },
                "query": {
                  "$ref": "#/properties/artifact/%24defs/s1"
                },
                "report_variables": {
                  "type": "array",
                  "items": {
                    "$ref": "#/properties/artifact/%24defs/s0"
                  },
                  "minItems": 0,
                  "maxItems": 16
                }
              }
            },
            "claim": {
              "anyOf": [
                {
                  "type": "null"
                },
                {
                  "type": "string",
                  "minLength": 64,
                  "maxLength": 64,
                  "pattern": "^[0-9a-f]{64}$"
                }
              ]
            }
          }
        }
      },
      "$defs": {
        "s0": {
          "type": "string",
          "minLength": 1,
          "maxLength": 48,
          "pattern": "^[A-Za-z_][A-Za-z0-9_.-]*$"
        },
        "s1": {
          "type": "array",
          "items": {
            "$ref": "#/properties/artifact/%24defs/s2"
          },
          "minItems": 0,
          "maxItems": 16
        },
        "s2": {
          "anyOf": [
            {
              "$ref": "#/properties/artifact/%24defs/s3"
            },
            {
              "$ref": "#/properties/artifact/%24defs/s4"
            },
            {
              "$ref": "#/properties/artifact/%24defs/s5"
            }
          ]
        },
        "s3": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "kind",
            "term"
          ],
          "properties": {
            "kind": {
              "enum": [
                "call"
              ]
            },
            "term": {
              "$ref": "#/properties/artifact/%24defs/s0"
            }
          }
        },
        "s4": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "kind",
            "left",
            "right"
          ],
          "properties": {
            "kind": {
              "enum": [
                "unify"
              ]
            },
            "left": {
              "$ref": "#/properties/artifact/%24defs/s0"
            },
            "right": {
              "$ref": "#/properties/artifact/%24defs/s0"
            }
          }
        },
        "s5": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "kind"
          ],
          "properties": {
            "kind": {
              "enum": [
                "cut",
                "true",
                "fail"
              ]
            }
          }
        }
      }
    }
  }
}

Originalschema öffnen

Ergebnis & Dokumentation

Maschinenlesbare Dokumentation dieses Hubs

Quelle dieser Seite: der veröffentlichte HALOWERK-Katalog. Stand: 2026-11-01, 15:19 UTC.

Weitere Endpunkte dieses Hubs

Alle Endpunkte dieses Hubs →