Git Product home page Git Product logo

bachelorthesis's Introduction

Bachelorthesis

My Bachelor's thesis about the implementation of path indexing in Isabelle/ML, including a unified interface for term indices and a testing framework.

Abstract

In recent years, increasingly powerful proof automation has been introduced to interactive theorem provers such as Isabelle.This automation necessitates efficient data structures to index and query sets of terms.So-called term indices provide queries for retrieving variants, instances, generalisations and unifiables of a given term.Two indexing techniques, path indexing and discrimination tree indexing are reviewed.We implement path indexing for first-order terms in Isabelle/ML and adapt it to the more general term indexing interface defined in Isabelle/ML.We further define a unified interface for the path index and the previously implemented discrimination tree index, thereby clearing the way for the implementation of additional term indices in the future.Lastly, we evaluate the performance of path indexing in relation to discrimination tree indexing.

Contents

  • doc: Some notes written for myself
  • spec_check: The testing framework used. See also the mirror at https://github.com/kappelmann/SpecCheck
  • src: The code of the thesis. Test.thy links everything, pathX and net.ML are the term indices, term_index.ML the interface.
  • test_data: The data used for the plots of the thesis. See also Test.thy for the commands used.
  • thesis: The Bachelor's thesis, i.e. the PDF and its Latex sources

Contact

Sebastian Willenbrink Email: [email protected]

bachelorthesis's People

Contributors

kappelmann avatar willenbrink avatar

Watchers

 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.