Code Monkey home page Code Monkey logo

analysis's Introduction

Analysis library compatible with Mathematical Components

Docker CI Chat

This repository contains a real analysis library for the Coq proof-assistant. It is based on the Mathematical Components library.

In terms of opam, it comes as the following packages:

  • coq-mathcomp-classical: a layer for classical reasoning
  • coq-mathcomp-analysis: theories for real analysis

Meta

Building and installation instructions

The easiest way to install the latest released version of MathComp-Analysis library is via the opam package manager:

opam repo add coq-released https://coq.inria.fr/opam/released
opam install coq-mathcomp-analysis

Note that the package coq-mathcomp-classical will be installed as a dependency.

Manual installation

To build and install manually, make sure that the dependencies are met and do:

git clone https://github.com/math-comp/analysis.git
cd analysis
make   # or make -j <number-of-cores-on-your-machine> 
make install

About the stability of this library

Changes are documented systematically in CHANGELOG.md and CHANGELOG_UNRELEASED.md.

We bump the minor part of the version number for breaking changes.

We use deprecation warnings to help transitioning to new versions.

We try to preserve backward compatibility as best as we can.

Documentation

Each file is documented in its header (documentation for the last version, using coq2html).

Overview presentations:

Publications about MathComp-Analysis:

Other work using MathComp-Analysis:

Mathematical structures

MathComp-Analysis adds mathematical structures on top of MathComp's ones. The following inheritance diagram displays the resulting hierarchy as of version 1.1.0 (excluding most MathComp structures). The structures introduced by MathComp-Analysis are highlighted. (See topology.v, normedtype.v, reals.v, measure.v.)

Main_inheritance_graph

Hierarchies of functions

Functions Functions with a finite image Measures Kernels
Functions Functions_with_a_finite_image Measures Kernels
(see functions.v) (see cardinality.v, lebesgue_integral.v) (see measure.v, charge.v) (see kernel.v)

Development information

Detailed requirements and installation procedure

Developping with nix

Contributing

Previous work reused at the time of the first releases

This library was inspired by the Coquelicot library by Sylvie Boldo, Catherine Lelay, and Guillaume Melquiond. In the first releases, topology.v and normedtype.v contained a reimplementation of the file Hierarchy.v from the library Coquelicot.

The instantiation of the mathematical structures of the Mathematical Components library with the real numbers of the standard Coq library used a well-known file (Rstruct.v) from the CoqApprox library (with modifications by various authors).

The proof of Zorn's Lemma in classical_sets.v (NB: new filename) was a reimplementation of the one by Daniel Schepler (https://github.com/coq-community/zorns-lemma) but it has been rewritten for version 1.3.0; we also originally took inspiration from Schepler's work on topology (https://github.com/coq-community/topology) for parts of topology.v.

ORIGINAL_FILES.md gives more details about the files in the first releases.

Acknowledgments

Many thanks to various contributors

analysis's People

Contributors

affeldt-aist avatar cohencyril avatar proux01 avatar strub avatar zstone1 avatar thery avatar pi8027 avatar ybertot avatar hoheinzollern avatar ishiguroyoshihiro avatar drouhling avatar amahboubi avatar vlj avatar t6s avatar tragicus avatar marcomole00 avatar mkerjean avatar alizter avatar mrhaandi avatar anton-trunov avatar magnusblarsen avatar gitter-badger avatar zimmi48 avatar yoshihiro503 avatar yosuke-ito-345 avatar larsr 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.