{
    "content": "<h1><a href=\"..\/SOFTWARE-FOUNDATIONS\/\">SOFTWARE-FOUNDATIONS<\/a><\/h1><p>The <a href=\"..\/SOFTWARE-FOUNDATIONS\/\">SOFTWARE-FOUNDATIONS<\/a> series is a comprehensive set of textbooks and curricula designed to introduce the mathematical underpinnings of reliable software. Developed primarily at the <a href=\"..\/UNIVERSITY-OF-PENNSYLVANIA\/\">UNIVERSITY-OF-PENNSYLVANIA<\/a> by <a href=\"..\/BENJAMIN-PIERCE\/\">BENJAMIN-PIERCE<\/a> and his collaborators, the series integrates <a href=\"..\/FORMAL-VERIFICATION\/\">FORMAL-VERIFICATION<\/a> and <a href=\"..\/LOGIC\/\">LOGIC<\/a> directly into the study of <a href=\"..\/PROGRAMMING-LANGUAGES\/\">PROGRAMMING-LANGUAGES<\/a>. It is widely considered a standard resource for researchers and practitioners in the field of <a href=\"..\/COMPUTER-SCIENCE\/\">COMPUTER-SCIENCE<\/a>.<\/p><h2>Pedagogical Approach<\/h2><p>The core of the series is built upon the <a href=\"..\/COQ\/\">COQ<\/a> proof assistant. Unlike traditional textbooks, <a href=\"..\/SOFTWARE-FOUNDATIONS\/\">SOFTWARE-FOUNDATIONS<\/a> consists of literate <a href=\"..\/COQ\/\">COQ<\/a> scripts, allowing students to interactively prove theorems about <a href=\"..\/FUNCTIONAL-PROGRAMMING\/\">FUNCTIONAL-PROGRAMMING<\/a> and <a href=\"..\/OPERATIONAL-SEMANTICS\/\">OPERATIONAL-SEMANTICS<\/a>. This hands-on approach bridges the gap between theoretical <a href=\"..\/TYPE-THEORY\/\">TYPE-THEORY<\/a> and practical <a href=\"..\/SOFTWARE-ENGINEERING\/\">SOFTWARE-ENGINEERING<\/a>. For more information, visit the <a href=\"https:\/\/softwarefoundations.cis.upenn.edu\/\">official project page<\/a> or the <a href=\"https:\/\/coq.inria.fr\/\">Coq Proof Assistant website<\/a>.<\/p><h2>Volumes and Topics<\/h2><p>The series is divided into several volumes, including <i>Logical Foundations<\/i>, <i>Programming Language Foundations<\/i>, and <i>Verified Functional Algorithms<\/i>. These volumes cover essential concepts such as <a href=\"..\/HOARE-LOGIC\/\">HOARE-LOGIC<\/a>, <a href=\"..\/LAMBDA-CALCULUS\/\">LAMBDA-CALCULUS<\/a>, and automated <a href=\"..\/THEOREM-PROVING\/\">THEOREM-PROVING<\/a>. The project remains an open-source effort, frequently updated by the community of researchers and educators to reflect modern advancements in <a href=\"..\/FORMAL-METHODS\/\">FORMAL-METHODS<\/a>.<\/p><ul><li><a href=\"..\/DEPENDENT-TYPES\/\">DEPENDENT-TYPES<\/a><\/li><li><a href=\"..\/FORMAL-METHODS\/\">FORMAL-METHODS<\/a><\/li><li><a href=\"..\/CURRY-HOWARD-CORRESPONDENCE\/\">CURRY-HOWARD-CORRESPONDENCE<\/a><\/li><li><a href=\"..\/MODEL-CHECKING\/\">MODEL-CHECKING<\/a><\/li><\/ul>",
    "tags": [
        "software-foundations",
        "coq",
        "formal-verification",
        "logic",
        "type-theory",
        "programming-languages",
        "functional-programming",
        "computer-science",
        "verification",
        "proof-assistant"
    ]
}