{
  "title": "Partition and composition calculator",
  "human_url": "https://happytails.ai/en/calculators/partition-and-composition-calculator/",
  "agent_url": "https://happytails.ai/agents/en/calculators/partition-and-composition-calculator/",
  "language": "en",
  "markdown_url": "https://happytails.ai/en/calculators/partition-and-composition-calculator.md",
  "content": "Partition and composition calculator\nEnumerate constrained integer partitions or ordered compositions and verify every result.\nHow can we improve this tool?\nReport a problem or share an idea.\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\nHow to use Partition and composition calculator\nPaste a JSON example and edit its documented fields. Keep machine field names unchanged.\nChoose a supported operation and review the stated domain and bounds.\nReview the result and download the complete JSON or CSV report, including worked steps.\nUseful next steps\nLinear system solver\nMatrix workspace\nModular arithmetic workspace\nPartition and composition calculator\nSupply total from 0 to 60 and optional minPart, maxPart, minLength, maxLength and distinct. Parts are positive integers from 1 to 60. Partitions are nondecreasing lists; compositions distinguish order. Distinct applies to the whole list. The empty list is the sole length-zero representation of total zero. Every result is checked against the stated constraints; exceeding enumeration or report limits returns no partial list.\nKeep the complete calculation\nAll processing stays on your device. Paste JSON with dot decimals; quote exact fractions and large integers. Input is limited to 100,000 characters and 100 digits per scalar. Exact results use reduced fractions, with a 1,024-digit and 200,000-step arithmetic bound. Enumeration is limited to 10,000 complete results and 1,000,000 search steps; exceeding a bound returns an error, not a partial answer. Geometry uses floating-point approximations. JSON and typed JSON Pointer CSV retain the complete input, results, constraints and worked steps. Reports are limited to 4,000,000 JSON and 8,000,000 CSV characters. Each calculation uses a disposable worker with a 10-second timeout. Search and sort the first 200 preview rows. Copy result copies the summary. Download JSON or CSV for every result and worked step. Geometry tools also provide a downloadable SVG diagram.",
  "content_format": "text/plain",
  "visibility": "public",
  "links": [
    {
      "name": "Linear system solver",
      "url": "https://happytails.ai/en/calculators/linear-system-solver/"
    },
    {
      "name": "Matrix workspace",
      "url": "https://happytails.ai/en/calculators/matrix-workspace/"
    },
    {
      "name": "Modular arithmetic workspace",
      "url": "https://happytails.ai/en/calculators/modular-arithmetic-workspace/"
    }
  ],
  "tool": {
    "id": "partition-and-composition-calculator",
    "category": "calculators",
    "built": true,
    "requirements": "Supply total from 0 to 60 and optional minPart, maxPart, minLength, maxLength and distinct. Parts are positive integers from 1 to 60. Partitions are nondecreasing lists; compositions distinguish order. Distinct applies to the whole list. The empty list is the sole length-zero representation of total zero. Every result is checked against the stated constraints; exceeding enumeration or report limits returns no partial list. All processing stays on your device. Paste JSON with dot decimals; quote exact fractions and large integers. Input is limited to 100,000 characters and 100 digits per scalar. Exact results use reduced fractions, with a 1,024-digit and 200,000-step arithmetic bound. Enumeration is limited to 10,000 complete results and 1,000,000 search steps; exceeding a bound returns an error, not a partial answer. Geometry uses floating-point approximations. JSON and typed JSON Pointer CSV retain the complete input, results, constraints and worked steps. Reports are limited to 4,000,000 JSON and 8,000,000 CSV characters. Each calculation uses a disposable worker with a 10-second timeout. Search and sort the first 200 preview rows. Copy result copies the summary. Download JSON or CSV for every result and worked step. Geometry tools also provide a downloadable SVG diagram.",
    "implementation": {
      "fields": [
        {
          "key": "mode",
          "label": "Enumeration mode",
          "value": "Partitions",
          "type": "select",
          "values": [
            "Partitions",
            "Compositions"
          ]
        }
      ],
      "presentation": "metrics",
      "inputMaxLength": 100000,
      "inputErrorCode": "EXACT_MATH_INPUT",
      "note": "Supply total from 0 to 60 and optional minPart, maxPart, minLength, maxLength and distinct. Parts are positive integers from 1 to 60. Partitions are nondecreasing lists; compositions distinguish order. Distinct applies to the whole list. The empty list is the sole length-zero representation of total zero. Every result is checked against the stated constraints; exceeding enumeration or report limits returns no partial list. All processing stays on your device. Paste JSON with dot decimals; quote exact fractions and large integers. Input is limited to 100,000 characters and 100 digits per scalar. Exact results use reduced fractions, with a 1,024-digit and 200,000-step arithmetic bound. Enumeration is limited to 10,000 complete results and 1,000,000 search steps; exceeding a bound returns an error, not a partial answer. Geometry uses floating-point approximations. JSON and typed JSON Pointer CSV retain the complete input, results, constraints and worked steps. Reports are limited to 4,000,000 JSON and 8,000,000 CSV characters. Each calculation uses a disposable worker with a 10-second timeout.",
      "experience": {
        "automatic": false,
        "single": false,
        "inputMaxLength": 100000,
        "inputMode": "text",
        "label": "JSON input",
        "placeholder": "{\n  \"total\": 5\n}",
        "help": "Supply total from 0 to 60 and optional minPart, maxPart, minLength, maxLength and distinct. Parts are positive integers from 1 to 60. Partitions are nondecreasing lists; compositions distinguish order. Distinct applies to the whole list. The empty list is the sole length-zero representation of total zero. Every result is checked against the stated constraints; exceeding enumeration or report limits returns no partial list. All processing stays on your device. Paste JSON with dot decimals; quote exact fractions and large integers. Input is limited to 100,000 characters and 100 digits per scalar. Exact results use reduced fractions, with a 1,024-digit and 200,000-step arithmetic bound. Enumeration is limited to 10,000 complete results and 1,000,000 search steps; exceeding a bound returns an error, not a partial answer. Geometry uses floating-point approximations. JSON and typed JSON Pointer CSV retain the complete input, results, constraints and worked steps. Reports are limited to 4,000,000 JSON and 8,000,000 CSV characters. Each calculation uses a disposable worker with a 10-second timeout. Up to 100,000 characters. Review the settings before running.",
        "action": null
      },
      "mode": "explicit",
      "interactive": false
    },
    "execution": "Browser interface",
    "api": null,
    "browser_agent": {
      "supported": true,
      "name": "run_current_tool",
      "discovery": "WebMCP on the human page in a supporting browser",
      "verification": "See audit/API-AUDIT.md; availability is not verification"
    }
  },
  "markdown": "# Partition and composition calculator\n\n- Human page: https://happytails.ai/en/calculators/partition-and-composition-calculator/\n- Markdown: https://happytails.ai/en/calculators/partition-and-composition-calculator.md\n- Structured JSON: https://happytails.ai/agents/en/calculators/partition-and-composition-calculator/index.json\n- Visibility: public\n\n## Tool capabilities\n\n| Property | Value |\n| --- | --- |\n| Tool ID | `partition-and-composition-calculator` |\n| Category | calculators |\n| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |\n| Browser execution | Use the visible action or interactive controls. |\n| Browser processing | Browser; see tool notes for network behavior. |\n| HTTP API | Not callable through HTTP. |\n| Browser-agent interface | run_current_tool |\n\n### Implementation notes\n\nSupply total from 0 to 60 and optional minPart, maxPart, minLength, maxLength and distinct. Parts are positive integers from 1 to 60. Partitions are nondecreasing lists; compositions distinguish order. Distinct applies to the whole list. The empty list is the sole length-zero representation of total zero. Every result is checked against the stated constraints; exceeding enumeration or report limits returns no partial list. All processing stays on your device. Paste JSON with dot decimals; quote exact fractions and large integers. Input is limited to 100,000 characters and 100 digits per scalar. Exact results use reduced fractions, with a 1,024-digit and 200,000-step arithmetic bound. Enumeration is limited to 10,000 complete results and 1,000,000 search steps; exceeding a bound returns an error, not a partial answer. Geometry uses floating-point approximations. JSON and typed JSON Pointer CSV retain the complete input, results, constraints and worked steps. Reports are limited to 4,000,000 JSON and 8,000,000 CSV characters. Each calculation uses a disposable worker with a 10-second timeout.\n\n### Inputs and settings\n\nText input: JSON input.\n\nExample or placeholder shown in the interface (not a validated fixture):\n\n```text\n{\n  \"total\": 5\n}\n```\n\nSupply total from 0 to 60 and optional minPart, maxPart, minLength, maxLength and distinct. Parts are positive integers from 1 to 60. Partitions are nondecreasing lists; compositions distinguish order. Distinct applies to the whole list. The empty list is the sole length-zero representation of total zero. Every result is checked against the stated constraints; exceeding enumeration or report limits returns no partial list. All processing stays on your device. Paste JSON with dot decimals; quote exact fractions and large integers. Input is limited to 100,000 characters and 100 digits per scalar. Exact results use reduced fractions, with a 1,024-digit and 200,000-step arithmetic bound. Enumeration is limited to 10,000 complete results and 1,000,000 search steps; exceeding a bound returns an error, not a partial answer. Geometry uses floating-point approximations. JSON and typed JSON Pointer CSV retain the complete input, results, constraints and worked steps. Reports are limited to 4,000,000 JSON and 8,000,000 CSV characters. Each calculation uses a disposable worker with a 10-second timeout. Up to 100,000 characters. Review the settings before running.\n\n| Setting | Meaning | Control type | Default | Constraints |\n| --- | --- | --- | --- | --- |\n| `mode` | Enumeration mode | select | \"Partitions\" | Allowed: Partitions, Compositions |\n\n### Browser-agent workflow\n\n1. Open the human page in a browser that supports WebMCP.\n2. Discover the interface exposed by that page; use its actual schema.\n3. Select files on the page first when the tool requires files.\n4. Call `run_current_tool` with valid input and settings.\n5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.\n\nCalls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.\n\n### Planning specification\n\nSupply total from 0 to 60 and optional minPart, maxPart, minLength, maxLength and distinct. Parts are positive integers from 1 to 60. Partitions are nondecreasing lists; compositions distinguish order. Distinct applies to the whole list. The empty list is the sole length-zero representation of total zero. Every result is checked against the stated constraints; exceeding enumeration or report limits returns no partial list. All processing stays on your device. Paste JSON with dot decimals; quote exact fractions and large integers. Input is limited to 100,000 characters and 100 digits per scalar. Exact results use reduced fractions, with a 1,024-digit and 200,000-step arithmetic bound. Enumeration is limited to 10,000 complete results and 1,000,000 search steps; exceeding a bound returns an error, not a partial answer. Geometry uses floating-point approximations. JSON and typed JSON Pointer CSV retain the complete input, results, constraints and worked steps. Reports are limited to 4,000,000 JSON and 8,000,000 CSV characters. Each calculation uses a disposable worker with a 10-second timeout. Search and sort the first 200 preview rows. Copy result copies the summary. Download JSON or CSV for every result and worked step. Geometry tools also provide a downloadable SVG diagram.\n\nThis describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.\n\n### Complete machine-readable capability record\n\n```json\n{\n  \"id\": \"partition-and-composition-calculator\",\n  \"category\": \"calculators\",\n  \"built\": true,\n  \"requirements\": \"Supply total from 0 to 60 and optional minPart, maxPart, minLength, maxLength and distinct. Parts are positive integers from 1 to 60. Partitions are nondecreasing lists; compositions distinguish order. Distinct applies to the whole list. The empty list is the sole length-zero representation of total zero. Every result is checked against the stated constraints; exceeding enumeration or report limits returns no partial list. All processing stays on your device. Paste JSON with dot decimals; quote exact fractions and large integers. Input is limited to 100,000 characters and 100 digits per scalar. Exact results use reduced fractions, with a 1,024-digit and 200,000-step arithmetic bound. Enumeration is limited to 10,000 complete results and 1,000,000 search steps; exceeding a bound returns an error, not a partial answer. Geometry uses floating-point approximations. JSON and typed JSON Pointer CSV retain the complete input, results, constraints and worked steps. Reports are limited to 4,000,000 JSON and 8,000,000 CSV characters. Each calculation uses a disposable worker with a 10-second timeout. Search and sort the first 200 preview rows. Copy result copies the summary. Download JSON or CSV for every result and worked step. Geometry tools also provide a downloadable SVG diagram.\",\n  \"implementation\": {\n    \"fields\": [\n      {\n        \"key\": \"mode\",\n        \"label\": \"Enumeration mode\",\n        \"value\": \"Partitions\",\n        \"type\": \"select\",\n        \"values\": [\n          \"Partitions\",\n          \"Compositions\"\n        ]\n      }\n    ],\n    \"presentation\": \"metrics\",\n    \"inputMaxLength\": 100000,\n    \"inputErrorCode\": \"EXACT_MATH_INPUT\",\n    \"note\": \"Supply total from 0 to 60 and optional minPart, maxPart, minLength, maxLength and distinct. Parts are positive integers from 1 to 60. Partitions are nondecreasing lists; compositions distinguish order. Distinct applies to the whole list. The empty list is the sole length-zero representation of total zero. Every result is checked against the stated constraints; exceeding enumeration or report limits returns no partial list. All processing stays on your device. Paste JSON with dot decimals; quote exact fractions and large integers. Input is limited to 100,000 characters and 100 digits per scalar. Exact results use reduced fractions, with a 1,024-digit and 200,000-step arithmetic bound. Enumeration is limited to 10,000 complete results and 1,000,000 search steps; exceeding a bound returns an error, not a partial answer. Geometry uses floating-point approximations. JSON and typed JSON Pointer CSV retain the complete input, results, constraints and worked steps. Reports are limited to 4,000,000 JSON and 8,000,000 CSV characters. Each calculation uses a disposable worker with a 10-second timeout.\",\n    \"experience\": {\n      \"automatic\": false,\n      \"single\": false,\n      \"inputMaxLength\": 100000,\n      \"inputMode\": \"text\",\n      \"label\": \"JSON input\",\n      \"placeholder\": \"{\\n  \\\"total\\\": 5\\n}\",\n      \"help\": \"Supply total from 0 to 60 and optional minPart, maxPart, minLength, maxLength and distinct. Parts are positive integers from 1 to 60. Partitions are nondecreasing lists; compositions distinguish order. Distinct applies to the whole list. The empty list is the sole length-zero representation of total zero. Every result is checked against the stated constraints; exceeding enumeration or report limits returns no partial list. All processing stays on your device. Paste JSON with dot decimals; quote exact fractions and large integers. Input is limited to 100,000 characters and 100 digits per scalar. Exact results use reduced fractions, with a 1,024-digit and 200,000-step arithmetic bound. Enumeration is limited to 10,000 complete results and 1,000,000 search steps; exceeding a bound returns an error, not a partial answer. Geometry uses floating-point approximations. JSON and typed JSON Pointer CSV retain the complete input, results, constraints and worked steps. Reports are limited to 4,000,000 JSON and 8,000,000 CSV characters. Each calculation uses a disposable worker with a 10-second timeout. Up to 100,000 characters. Review the settings before running.\",\n      \"action\": null\n    },\n    \"mode\": \"explicit\",\n    \"interactive\": false\n  },\n  \"execution\": \"Browser interface\",\n  \"api\": null,\n  \"browser_agent\": {\n    \"supported\": true,\n    \"name\": \"run_current_tool\",\n    \"discovery\": \"WebMCP on the human page in a supporting browser\",\n    \"verification\": \"See audit/API-AUDIT.md; availability is not verification\"\n  }\n}\n```\n\n## Page guide\n\nEnumerate constrained integer partitions or ordered compositions and verify every result.\n\nHow can we improve this tool?\n\nReport a problem or share an idea.\n\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\n\n### How to use Partition and composition calculator\n\n1. Paste a JSON example and edit its documented fields. Keep machine field names unchanged.\n2. Choose a supported operation and review the stated domain and bounds.\n3. Review the result and download the complete JSON or CSV report, including worked steps.\n\n## Useful next steps\n\n- [Linear system solver](https://happytails.ai/en/calculators/linear-system-solver/) ([Markdown](https://happytails.ai/en/calculators/linear-system-solver.md))\n\n- [Matrix workspace](https://happytails.ai/en/calculators/matrix-workspace/) ([Markdown](https://happytails.ai/en/calculators/matrix-workspace.md))\n\n- [Modular arithmetic workspace](https://happytails.ai/en/calculators/modular-arithmetic-workspace/) ([Markdown](https://happytails.ai/en/calculators/modular-arithmetic-workspace.md))\n\n## Partition and composition calculator\n\nSupply total from 0 to 60 and optional minPart, maxPart, minLength, maxLength and distinct. Parts are positive integers from 1 to 60. Partitions are nondecreasing lists; compositions distinguish order. Distinct applies to the whole list. The empty list is the sole length-zero representation of total zero. Every result is checked against the stated constraints; exceeding enumeration or report limits returns no partial list.\n\n### Keep the complete calculation\n\nAll processing stays on your device. Paste JSON with dot decimals; quote exact fractions and large integers. Input is limited to 100,000 characters and 100 digits per scalar. Exact results use reduced fractions, with a 1,024-digit and 200,000-step arithmetic bound. Enumeration is limited to 10,000 complete results and 1,000,000 search steps; exceeding a bound returns an error, not a partial answer. Geometry uses floating-point approximations. JSON and typed JSON Pointer CSV retain the complete input, results, constraints and worked steps. Reports are limited to 4,000,000 JSON and 8,000,000 CSV characters. Each calculation uses a disposable worker with a 10-second timeout. Search and sort the first 200 preview rows. Copy result copies the summary. Download JSON or CSV for every result and worked step. Geometry tools also provide a downloadable SVG diagram.\n"
}