Git Product home page Git Product logo

twelf_tutorial's Introduction

Twelf Tutorial

Background

Twelf is a proof assistant tool for checking and deriving proofs of mathematical properties. The Twelf system provides useful software features, such as higher-order abstract syntax, for reasoning about formal languages and deductive logics.

Contents

This package is a tutorial on Twelf and type theory. Concepts are presented using a Twelf encoding of programming language Minilang. Minilang is a language of number and strings that is rigorously defined in file typetheory_paper.pdf.

Documentation

Twelf Files

  • sources.cfg: Tells Twelf the files to read and the order in which to process them.
  • syntax.elf: Twelf encoding of Minilang's syntax.
  • typing.elf: Twelf encoding of Minilang's typing rules or static semantics.
  • evaluation.elf: Twelf encoding of Minilang's evaluation rules or dynamic semantics.
  • preservation.elf: Contains the preservation theorem and its proof.
  • progress.elf: Contains the progress theorem and its proof.
  • test_typing.elf: Provides example judgments that can be automatically derived by Twelf.

Twelf Live Server

The Twelf system can be used without installing it on your local machine by using the Twelf Live Server.

twelf_tutorial's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.