{
  "handle": "MECE",
  "data_schema": {
    "type": "object",
    "required": [
      "root_set",
      "subsets",
      "completeness_proof"
    ],
    "properties": {
      "root_set": {
        "type": "string",
        "description": "The universe being partitioned"
      },
      "subsets": {
        "type": "array",
        "description": "The mutually exclusive categories"
      },
      "completeness_proof": {
        "type": "string",
        "description": "How exhaustiveness was established, including the disposition of edge cases. Required because an unevidenced exhaustiveness claim is what False Exclusivity below consists of."
      },
      "criterion": {
        "type": "string",
        "description": "The single dimension this level partitions along."
      }
    }
  },
  "mechanism": "Exhaustive partition. Divide the problem space along one stated criterion into categories that are Mutually Exclusive (no overlap) and Collectively Exhaustive (no gaps). Test: can any item belong to two categories? Is any item uncategorized? Refine until both pass.",
  "gloss": "Mutually Exclusive, Collectively Exhaustive partitioning",
  "failure_modes": [
    "The Other Bucket Trap: 'Misc' exceeds `misc_tolerance`, so the partition covers the space without describing it.",
    "Dimensional Error: partitioning criteria mixed, e.g. Colour beside Origin.",
    "False Exclusivity: edge cases quietly assigned to force a fit."
  ],
  "invariants": [
    "Exclusivity: Intersection(Subset_i, Subset_j) == NULL.",
    "Exhaustiveness: Union(Subsets) == UniversalSet, with any 'Other' subset within `misc_tolerance`.",
    "The subsets at a level partition along a single stated dimension."
  ],
  "parameters": [
    {
      "name": "max_depth",
      "type": "Int",
      "range": "[1, 10]",
      "description": "How deep the tree can go"
    },
    {
      "name": "misc_tolerance",
      "type": "Float",
      "range": "[0.0, 0.1]",
      "description": "Max % of items allowed in 'Other'"
    }
  ],
  "_meta": {
    "tier": 2,
    "related": [
      "sema:Decompose#mh:SHA-256:31c56ead72462a2b55d1056d6d4878a4e031ebb43b7160743b861aa1c294cafe",
      "Labelsqueeze#5363"
    ],
    "ring": 2,
    "path": [
      "Infrastructure",
      "Data Structures"
    ],
    "supersedes": [
      "sema:MECE#mh:SHA-256:da19e78dcf447f07e12eca8703f1992fe96f3b0d9b06d42dc349e11dad4ad23f"
    ]
  },
  "sema_id": "sema:MECE#mh:SHA-256:ae1975b15fa25939a85a231371adec3b2431658837ad7ada72315f64b849cb78",
  "sema_ref": "MECE#ae19",
  "sema_stub": "ae19",
  "sema_layer": "Infrastructure",
  "sema_category": "Data Structures",
  "used_by": {
    "references": {
      "Labelsqueeze": "sema:Labelsqueeze#mh:SHA-256:5363fd96234c9745a73f11e01c75c07f119428b593daffaf617233a817607ac0",
      "Overlap": "sema:Overlap#mh:SHA-256:c7019daf2905344a1f3ca2232d74eea272fd284fbe14523e5aa33caa1b46c18e"
    }
  }
}
