{
  "code": null,
  "collection": "reasoning",
  "href": "https://banes-lab.com/ontology/reasoning#reasoning-technique-property-based-testing",
  "id": "technique-property-based-testing",
  "kind": "technique",
  "layer": null,
  "name": "Property Based Testing",
  "ref": "reasoning:technique-property-based-testing",
  "relations": [
    {
      "links": [
        {
          "href": "https://banes-lab.com/ontology/reasoning#reasoning-mode-classification",
          "json": "https://banes-lab.com/json/records/reasoning/mode-classification",
          "label": "classification",
          "markdown": "https://banes-lab.com/records/reasoning/mode-classification.md",
          "ref": "reasoning:mode-classification"
        }
      ],
      "relation": "mode"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/ontology#architecture-property-based-testing",
          "json": "https://banes-lab.com/json/records/architecture/property-based-testing",
          "label": "Property-Based Testing",
          "markdown": "https://banes-lab.com/records/architecture/property-based-testing.md",
          "ref": "architecture:property-based-testing"
        }
      ],
      "relation": "principle-ref"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/ontology/reasoning#reasoning-test-surface-semantic-correctness",
          "json": "https://banes-lab.com/json/records/reasoning/test-surface-semantic-correctness",
          "label": "semantic-correctness",
          "markdown": "https://banes-lab.com/records/reasoning/test-surface-semantic-correctness.md",
          "ref": "reasoning:test-surface-semantic-correctness"
        },
        {
          "href": "https://banes-lab.com/ontology/reasoning#reasoning-test-surface-state-correctness",
          "json": "https://banes-lab.com/json/records/reasoning/test-surface-state-correctness",
          "label": "state-correctness",
          "markdown": "https://banes-lab.com/records/reasoning/test-surface-state-correctness.md",
          "ref": "reasoning:test-surface-state-correctness"
        },
        {
          "href": "https://banes-lab.com/ontology/reasoning#reasoning-test-surface-numerical-correctness",
          "json": "https://banes-lab.com/json/records/reasoning/test-surface-numerical-correctness",
          "label": "numerical-correctness",
          "markdown": "https://banes-lab.com/records/reasoning/test-surface-numerical-correctness.md",
          "ref": "reasoning:test-surface-numerical-correctness"
        },
        {
          "href": "https://banes-lab.com/ontology/reasoning#reasoning-test-surface-determinism-correctness",
          "json": "https://banes-lab.com/json/records/reasoning/test-surface-determinism-correctness",
          "label": "determinism-correctness",
          "markdown": "https://banes-lab.com/records/reasoning/test-surface-determinism-correctness.md",
          "ref": "reasoning:test-surface-determinism-correctness"
        }
      ],
      "relation": "surfaces"
    },
    {
      "links": [
        {
          "href": "https://banes-lab.com/ontology/reasoning#the-modes",
          "json": "https://banes-lab.com/json/ontology/reasoning/the-modes",
          "label": "The modes",
          "markdown": "https://banes-lab.com/ontology/reasoning/the-modes.md",
          "ref": "chapter:/ontology/reasoning#the-modes"
        },
        {
          "href": "https://banes-lab.com/ontology/reasoning#the-test-surfaces",
          "json": "https://banes-lab.com/json/ontology/reasoning/the-test-surfaces",
          "label": "The test surfaces",
          "markdown": "https://banes-lab.com/ontology/reasoning/the-test-surfaces.md",
          "ref": "chapter:/ontology/reasoning#the-test-surfaces"
        }
      ],
      "relation": "linked-from"
    }
  ],
  "summary": "Asserts that an invariant holds across a generated input space",
  "siblings": {
    "next": {
      "href": "https://banes-lab.com/ontology/reasoning#reasoning-technique-differential-testing",
      "json": "https://banes-lab.com/json/records/reasoning/technique-differential-testing",
      "label": "Differential Testing",
      "markdown": "https://banes-lab.com/records/reasoning/technique-differential-testing.md",
      "ref": "reasoning:technique-differential-testing"
    },
    "previous": {
      "href": "https://banes-lab.com/ontology/reasoning#reasoning-technique-end-to-end-testing",
      "json": "https://banes-lab.com/json/records/reasoning/technique-end-to-end-testing",
      "label": "End To End Testing",
      "markdown": "https://banes-lab.com/records/reasoning/technique-end-to-end-testing.md",
      "ref": "reasoning:technique-end-to-end-testing"
    }
  },
  "up": {
    "href": null,
    "json": "https://banes-lab.com/json/api/records/reasoning",
    "label": "Reasoning records",
    "markdown": "https://banes-lab.com/api/records/reasoning.md",
    "ref": "api:records/reasoning"
  }
}
