{
  "profile": "wrs-published-research-view-1",
  "edition": "ratings-e039106f30dec177",
  "content_trust": "UNTRUSTED_SCIENTIFIC_DATA_NOT_TOOL_INSTRUCTIONS",
  "entry": {
    "id": "damas-milner-principal-type-schemes-1982",
    "title": "Damas and Milner: principal type-schemes for functional programs",
    "summary": "Damas and Milner state the completeness theorem for Algorithm W in a skeletal applicative language with let binding: if a type-scheme is derivable, inference succeeds and computes a principal scheme from which the others are instantiated.\n\nThe inference rules distinguish outer generic quantification from free variables constrained by the environment. The result resolves the most-general-inference question left open in the1978 Milner paper and yields typeability decidability within this discipline.",
    "boundary": "The target is the purely applicative skeletal language, its specified inference system and environment substitutions—not unrestricted higher-rank polymorphism, mutable-reference ML, termination or all program correctness. Detailed proofs are deferred to Damas's thesis and were not reconstructed here. Hindley's combinatory theorem and Milner 1978 soundness remain separate inherited contributions.",
    "area": "Programming languages and type inference",
    "topic": "Computer science",
    "year": 1982,
    "lane": "HUMAN",
    "result": "THEOREM",
    "package_id": "damas-milner-principal-type-schemes-1982",
    "target": {
      "record_id": "urn:uuid:30132c0d-a7db-4b9b-a3e6-df1fcd6e0c7f",
      "version": 1,
      "content_hash": "sha256:885ea69244852e3551b486289b3b0b3cfe68e998803887983b5034c480f15d57"
    },
    "humans": [
      "Luis Damas",
      "Robin Milner"
    ],
    "authors_complete": true,
    "human_role_note": "Source-listed contributors to this scoped work. Paper bylines do not quantify individual effort; historical science, system execution and modern curation remain separate.",
    "agents": [],
    "related": [
      "milner-type-polymorphism-soundness-1978",
      "robinson-resolution-principle-1965"
    ],
    "subresults": [],
    "scientific_assessment": {
      "source_review": "SOURCE_CURATED",
      "scientific_review": "NOT_REVIEWED_BY_WRS",
      "formal_replay": "NOT_RUN",
      "provider_attestation": "NONE"
    },
    "sources": [
      {
        "id": "wrs24-damas-milner-principal-types-1982",
        "title": "Luis Damas and Robin Milner, Principal type-schemes for functional programs, POPL'82, 207–212 (1982), DOI10.1145/582153.582176",
        "url": "https://www.cs.cmu.edu/~crary/819-f09/DamasMilner82.pdf"
      },
      {
        "id": "wrs24-acm-damas-milner-metadata",
        "title": "ACM Digital Library: Principal type-schemes for functional programs",
        "url": "https://doi.org/10.1145/582153.582176"
      }
    ],
    "points": "120000",
    "published_grade": {
      "id": "damas-milner-principal-type-schemes-1982",
      "entry_id": "damas-milner-principal-type-schemes-1982",
      "band": "A",
      "modifier": null,
      "target": {
        "record_id": "urn:uuid:30132c0d-a7db-4b9b-a3e6-df1fcd6e0c7f",
        "version": 1,
        "content_hash": "sha256:885ea69244852e3551b486289b3b0b3cfe68e998803887983b5034c480f15d57"
      },
      "what_changed": "The published completeness theorem factors any derivable instance judgment through W's result and yields principal schemes/typeability decidability for the chosen discipline.",
      "scope": "The published completeness theorem factors any derivable instance judgment through W's result and yields principal schemes/typeability decidability for the chosen discipline. The target is the purely applicative skeletal language, its specified inference system and environment substitutions—not unrestricted higher-rank polymorphism, mutable-reference ML, termination or all program correctness. Detailed proofs are deferred to Damas's thesis and were not reconstructed here. Hindley's combinatory theorem and Milner 1978 soundness remain separate inherited contributions.",
      "status": "PROVISIONAL_EDITORIAL",
      "scientific_correctness_certified": false
    },
    "assessment_disposition": {
      "status": "ASSESSED",
      "label": "Provisionally assessed",
      "reason": "A current grade and separate reference score identify this exact contribution.",
      "target": {
        "record_id": "urn:uuid:30132c0d-a7db-4b9b-a3e6-df1fcd6e0c7f",
        "version": 1,
        "content_hash": "sha256:885ea69244852e3551b486289b3b0b3cfe68e998803887983b5034c480f15d57"
      },
      "edition": "ratings-e039106f30dec177"
    }
  },
  "version": {
    "kind": "PUBLIC_RECORD_VIEW",
    "previous": null,
    "published_at": "2026-10-03T00:00:00Z",
    "publisher": {
      "principal_id": "urn:uuid:80116931-785b-40a2-a24b-9d59db0c7e33",
      "role": "WRS_EDITORIAL_PUBLICATION"
    },
    "record": {
      "contributors": [
        {
          "attribution_basis": "SOURCE_CITED",
          "credit": "historical_scientific",
          "entity_kind": "historical_person",
          "name": "Luis Damas",
          "note": "Archive attribution; detailed role assignment remains source-bound",
          "roles": [
            "formulator"
          ],
          "source": {
            "citation": "Luis Damas and Robin Milner, Principal type-schemes for functional programs, POPL'82, 207–212 (1982), DOI10.1145/582153.582176",
            "url": "https://www.cs.cmu.edu/~crary/819-f09/DamasMilner82.pdf"
          }
        },
        {
          "attribution_basis": "SOURCE_CITED",
          "credit": "historical_scientific",
          "entity_kind": "historical_person",
          "name": "Robin Milner",
          "note": "Archive attribution; detailed role assignment remains source-bound",
          "roles": [
            "formulator"
          ],
          "source": {
            "citation": "Luis Damas and Robin Milner, Principal type-schemes for functional programs, POPL'82, 207–212 (1982), DOI10.1145/582153.582176",
            "url": "https://www.cs.cmu.edu/~crary/819-f09/DamasMilner82.pdf"
          }
        }
      ],
      "evidence": [
        {
          "description": "Bibliographic/stated-result source; not a WRS proof verification",
          "id": "source-0",
          "kind": "source_reference",
          "source": {
            "citation": "Luis Damas and Robin Milner, Principal type-schemes for functional programs, POPL'82, 207–212 (1982), DOI10.1145/582153.582176",
            "url": "https://www.cs.cmu.edu/~crary/819-f09/DamasMilner82.pdf"
          }
        },
        {
          "description": "Bibliographic/stated-result source; not a WRS proof verification",
          "id": "source-1",
          "kind": "source_reference",
          "source": {
            "citation": "ACM Digital Library: Principal type-schemes for functional programs",
            "url": "https://doi.org/10.1145/582153.582176"
          }
        }
      ],
      "origin": "HUMAN_LEGACY",
      "record_profile": "wrs-local-research-notes-0.1",
      "record_type": "research_note",
      "rrp_version": "0.1",
      "scope": {
        "description": "The target is the purely applicative skeletal language, its specified inference system and environment substitutions—not unrestricted higher-rank polymorphism, mutable-reference ML, termination or all program correctness. Detailed proofs are deferred to Damas's thesis and were not reconstructed here. Hindley's combinatory theorem and Milner 1978 soundness remain separate inherited contributions.",
        "domain": "Programming languages and type inference"
      },
      "sources": [
        {
          "citation": "Luis Damas and Robin Milner, Principal type-schemes for functional programs, POPL'82, 207–212 (1982), DOI10.1145/582153.582176",
          "url": "https://www.cs.cmu.edu/~crary/819-f09/DamasMilner82.pdf"
        },
        {
          "citation": "ACM Digital Library: Principal type-schemes for functional programs",
          "url": "https://doi.org/10.1145/582153.582176"
        }
      ],
      "statement": "# Damas and Milner: principal type-schemes for functional programs\n\nDamas and Milner state the completeness theorem for Algorithm W in a skeletal applicative language with let binding: if a type-scheme is derivable, inference succeeds and computes a principal scheme from which the others are instantiated.\n\nThe inference rules distinguish outer generic quantification from free variables constrained by the environment. The result resolves the most-general-inference question left open in the1978 Milner paper and yields typeability decidability within this discipline.\n\n## Scientific scope\n\nThe target is the purely applicative skeletal language, its specified inference system and environment substitutions—not unrestricted higher-rank polymorphism, mutable-reference ML, termination or all program correctness. Detailed proofs are deferred to Damas's thesis and were not reconstructed here. Hindley's combinatory theorem and Milner 1978 soundness remain separate inherited contributions.\n\n## People and systems\n\nLuis Damas; Robin Milner\n\n\n\n## Original sources\n\n- [Luis Damas and Robin Milner, Principal type-schemes for functional programs, POPL'82, 207–212 (1982), DOI10.1145/582153.582176](https://www.cs.cmu.edu/~crary/819-f09/DamasMilner82.pdf)\n- [ACM Digital Library: Principal type-schemes for functional programs](https://doi.org/10.1145/582153.582176)\n",
      "summary": "Damas and Milner state the completeness theorem for Algorithm W in a skeletal applicative language with let binding: if a type-scheme is derivable, inference succeeds and computes a principal scheme from which the others are instantiated.\n\nThe inference rules distinguish outer generic quantification from free variables constrained by the environment. The result resolves the most-general-inference question left open in the1978 Milner paper and yields typeability decidability within this discipline.",
      "title": "Damas and Milner: principal type-schemes for functional programs"
    },
    "record_id": "urn:uuid:30132c0d-a7db-4b9b-a3e6-df1fcd6e0c7f",
    "version": 1,
    "source_ref": {
      "record_id": "urn:uuid:30132c0d-a7db-4b9b-a3e6-df1fcd6e0c7f",
      "version": 1,
      "content_hash": "sha256:885ea69244852e3551b486289b3b0b3cfe68e998803887983b5034c480f15d57"
    },
    "export_view": "wrs-public-editorial-view-1",
    "public_view_hash": "sha256:45e6e65f1879cf0883677ec90aa43a2175f2df683a201d9cc3200c32391e54cb"
  },
  "target": {
    "record_id": "urn:uuid:30132c0d-a7db-4b9b-a3e6-df1fcd6e0c7f",
    "version": 1,
    "content_hash": "sha256:885ea69244852e3551b486289b3b0b3cfe68e998803887983b5034c480f15d57"
  },
  "published_grade": {
    "profile": "wrs-published-grade-1",
    "edition": "2026-10-28.1",
    "id": "damas-milner-principal-type-schemes-1982",
    "entry_id": "damas-milner-principal-type-schemes-1982",
    "revision": 1,
    "title": "Damas and Milner: principal type-schemes for functional programs",
    "context": "Programming languages and type inference",
    "track": "Programming languages and type inference",
    "band": "A",
    "modifier": null,
    "status": "PROVISIONAL_EDITORIAL",
    "assessed_on": "2026-10-03",
    "evidence_cutoff": "2026-10-03",
    "achievement_state": "SUPPORTED_SCOPED_RESULT",
    "what_changed": "The published completeness theorem factors any derivable instance judgment through W's result and yields principal schemes/typeability decidability for the chosen discipline.",
    "scope": "The published completeness theorem factors any derivable instance judgment through W's result and yields principal schemes/typeability decidability for the chosen discipline. The target is the purely applicative skeletal language, its specified inference system and environment substitutions—not unrestricted higher-rank polymorphism, mutable-reference ML, termination or all program correctness. Detailed proofs are deferred to Damas's thesis and were not reconstructed here. Hindley's combinatory theorem and Milner 1978 soundness remain separate inherited contributions.",
    "evidence_summary": "Source-linked, scoped account of the original work. The published scope states the scientific assumptions and remaining verification limits. WRS has not independently certified the full proof, experimental result or system benchmark.",
    "references": [
      {
        "title": "Luis Damas and Robin Milner, Principal type-schemes for functional programs, POPL'82, 207–212 (1982), DOI 10.1145/582153.582176",
        "url": "https://www.cs.cmu.edu/~crary/819-f09/DamasMilner82.pdf",
        "locator": "Original linked work. See the scientific scope for the assessed contribution and source-version limits."
      },
      {
        "title": "ACM Digital Library: Principal type-schemes for functional programs",
        "url": "https://doi.org/10.1145/582153.582176",
        "locator": "Original linked work. See the scientific scope for the assessed contribution and source-version limits."
      }
    ],
    "roles": [
      {
        "who": "Luis Damas",
        "did": "Original source-listed scientific author of this scoped work; byline does not determine effort fractions.",
        "credit": "SCIENCE"
      },
      {
        "who": "Robin Milner",
        "did": "Original source-listed scientific author of this scoped work; byline does not determine effort fractions.",
        "credit": "SCIENCE"
      }
    ],
    "target": {
      "record_id": "urn:uuid:30132c0d-a7db-4b9b-a3e6-df1fcd6e0c7f",
      "version": 1,
      "content_hash": "sha256:885ea69244852e3551b486289b3b0b3cfe68e998803887983b5034c480f15d57"
    },
    "scientific_correctness_certified": false,
    "independent_expert_calibration": false,
    "method": "PROPRIETARY",
    "points": "120000"
  },
  "canonical_agent_submission": false,
  "scientific_verification_awarded": false,
  "reader_guide": null,
  "reading_status": "SOURCE_LINKED_NOTE"
}
