{"id":13830164,"url":"https://github.com/eprover/eprover","last_synced_at":"2025-10-25T02:22:36.948Z","repository":{"id":13549738,"uuid":"73322244","full_name":"eprover/eprover","owner":"eprover","description":null,"archived":false,"fork":false,"pushed_at":"2025-03-20T18:11:44.000Z","size":153284,"stargazers_count":137,"open_issues_count":3,"forks_count":25,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-03-28T17:11:10.331Z","etag":null,"topics":["atp","prover","reasoning"],"latest_commit_sha":null,"homepage":"http://www.eprover.org","language":"C","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eprover.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-11-09T21:21:36.000Z","updated_at":"2025-02-13T18:40:54.000Z","dependencies_parsed_at":"2024-04-12T22:45:15.742Z","dependency_job_id":"a2794456-1bd8-4df2-9439-55911dc361eb","html_url":"https://github.com/eprover/eprover","commit_stats":null,"previous_names":[],"tags_count":509,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eprover%2Feprover","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eprover%2Feprover/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eprover%2Feprover/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eprover%2Feprover/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eprover","download_url":"https://codeload.github.com/eprover/eprover/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247226215,"owners_count":20904465,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["atp","prover","reasoning"],"created_at":"2024-08-04T10:00:56.794Z","updated_at":"2025-10-25T02:22:36.863Z","avatar_url":"https://github.com/eprover.png","language":"C","funding_links":[],"categories":["C"],"sub_categories":[],"readme":"**NOTE**: The CASC ReadMe file with information for the CADE ATP\nSystem Competition is in `DOC/Readme`.\n**NOTE**: The ultimate source is now README.md. Don't edit the plain\nREADME!\n\n\nShort Installation Instructions for the Impatient\n=================================================\n\nThis assumes that you have GNU tar, sh and gawk in your search path!\n\nSimple installation of the first-order version (will install\nexecutables):\n\n```sh\n  tar -xzf E.tgz\n  cd E\n  ./configure --bindir=/path/to/EXECDIR\n  make\n  make install\n  /path/to/EXECDIR/eprover -h | more\n```\n\nSimplest installation (in-place):\n\n```sh\n  tar -xzf E.tgz\n  cd E\n  ./configure\n  make rebuild\n  cd PROVER\n  ./eprover -h | more\n```\n\nRead the rest of this file and the fine (if incomplete) manual if\nanything fails. There should be a copy of the manual in\n`DOC/eprover.pdf`.\n\nE 3.2 supports (monomorphic) higher-order logic. To build a binary\nthat supports higher-order reasoning, use the following:\n\n\n```sh\n  ./configure --enable-ho\n  make rebuild\n  cd PROVER\n  eprover-ho -h | more\n```\n\n\nThe recommended command for running E on the file problem.p is\n\n```\n  eprover --auto --proof-object problem.p\n```\n\nIf you want to try the usually stronger strategy scheduling mode\n(particularly recommended for higher-order problems, use\n\n```\n  eprover --auto-schedule --proof-object problem.p\n```\n\nTo use more than one CPU, use something like\n```\n  eprover --auto-schedule=8 --proof-object problem.p\n```\n\nReplace `eprover` by `eprover-ho` for the higher-order-enabled\nversion.\nYou can add a time limit of 300 seconds with the option\n`--cpu-limit=300` and a memory limit of 2 GB with `--memory-limit=2048`\nfor all \"automatic\" modes. You can reduce output with `-s` (or\n`--silent`). As of version 1.9.1, E will try to auto-detect the input\nformat and adjust the output format accordingly. You can still force\ninput and output formats via commandline options.\n\n\n\nThe Equational Theorem Prover E\n===============================\n\nThis is the README file for version 3.2 \"Puttabong Moondrop\" of the E\nequational theorem prover. This version of E is free software, see the\nfile COPYING for details about the license and the fact that THERE IS\nNO WARRANTY!\n\n\nWhat is E?\n----------\n\nE is an equational theorem prover. That means it is a program that you\ncan stuff a mathematical specification (in many-sorted first-order\nlogic with equality or in polymorphic higher-order logic) and a\nhypothesisconjecture into, and which will then run forever, using up\nall of your machines resources. Very occasionally it will find a proof\nfor the conjecture and tell you so ;-).\n\nE has been created and is currently maintained by Stephan Schulz,\n\u003cschulz@eprover.org\u003e, now with the help of several contributors (see\n`DOC/CONTRIBUTORS`). It is developed and distributed under the GNU\nGeneral Public License.\n\nThe E homepage can be found at \u003chttps://www.eprover.org\u003e\n\n\nInstallation\n------------\n\nE can be installed anywhere in the file system, either by a normal\nuser or by the system administrator. By default, the prover will still\nbe compiled as a version that supports first-order logic only.\n\nTo install the package, unpack the distribution (if you are reading\nthis, you probably already did):\n\n```sh\n   gunzip -c E.tgz|tar -xvf -\n```\n\nor\n\n```sh\n   (g)tar -xzf E.tgz\n```\n(if you have GNU tar)\n\nThis should create a directory named E. After unpacking, optionally\nedit `E/Makefile.vars` to your liking. In particular, if building for\nHPUX, comment out the suitable CFLAGS definition (for most systems,\nthe default definition should be ok). Then change to the E directory:\n\n```sh\n   cd E\n```\n\nDetermine if you want to run E from its own build directory or wether\nyou want to install the executables in some other directory\nEXECDIR. In the first case, run\n\n```sh\n   ./configure\n```\n\notherwise\n\n```sh\n   ./configure --bindir=EXECDIR\n```\n\nor, if you also want to install the man-pages into MANDIR,\n\n```sh\n   ./configure --bindir=EXECDIR --man-prefix=MANDIR\n```\n\nTo enable higher-order-support, add the option `--enable-ho`, e.g.\n\n```sh\n   ./configure --enable-ho\n```\n\nThen type\n\n```sh\n   make\n```\n\nto compile the libraries and all included programs under the E\ndirectory. If you want to install E in a particular EXECDIR, type\n\n```sh\n   make install\n```\n\nYou must have write permission in the EXECDIR, so if you install E\noutside your own home directory, you may need to become root or use\nsudo.\n\nIf you have changed the configuration, you need to rebuild all object\nand binary files. Run\n\n```sh\n   make rebuild\n```\n\ninstead of plain make.\n\n\nType\n\n```sh\n   make documentation\n```\n\nto translate the LaTeX documentation (this requires LaTeX2e, pdflatex,\nand the packages theorem, amssymb and epsfig, which are included in\nmost current LaTeX distributions). The manual should also be included\nas a pre-compiled PDF.\n\nFor some operating systems, especially if you do not have the GNU gcc\ncompiler installed, you may need to edit Makefile.vars manually to\nselect tools and options. If you have any problems, look into\nE/DOC/PORTING.\n\nIf you get into trouble,\n\n```sh\n   make rebuild\n```\n\nwill rebuild E completely to your current configuration.\n\nAfter installation, go to E/PROVER and type\n\n```sh\n   ./eprover BOO001-1+rm_eq_rstfp.lop\n```\n\nto see the prover in action. Type\n\n```sh\n   ./eprover LUSK6.lop\n```\n\nfor a harder example. `./eprover -h` will give you some information and\na list of options.\n\nFor impatient people who do not want to read anything:\n\n```sh\n   eprover --auto --memory-limit=\u003c80%_of_your_main_memory\u003e \u003cproblem-file\u003e\n```\n\nshould give a reasonable performance on a large class of problems\n(unless your main memory is really small).\n\nThe auto mode will perform a heuristic pruning of the axiom set which\nmay result in incompleteness for very large problems (many thousands\nof axioms). If you need completeness, use\n\n```sh\n  eprover --satauto --memory-limit=\u003c80%_of_your_main_memory\u003e \u003cproblem-file\u003e\n```\n\nIn general, different proof problems are easy for different\nstrategies. If you run\n\n```sh\n  eprover --auto-schedule --memory-limit=\u003c80%_of_your_main_memory\u003e \u003cproblem-file\u003e\n```\n\nor\n\n```sh\n  eprover --satauto-schedule --memory-limit=\u003c80%_of_your_main_memory\u003e \u003cproblem-file\u003e\n```\n\nthe prover will try a series of strategies on the problem. It assumes\na 300 second run time - if you impose a different one externally, it\nis important to let E know via the `--cpu-limit=XXX` option so that it\ncan adjust the schedule. You can also enable usage of multiple cores\nwith the variant `--auto-schedule=n` (where `n` is the number of\ncores), or `--auto-schedule=Auto` to use all available cores.\n\nOne of the features of E is the ability to produce semi-readable\nproofs. To use this, type\n\n```sh\n  eprover --proof-object \u003cother-stuff\u003e\n```\n\nBy default, E will now automatically detect the input format (LOP,\nTPTP-2 or TPTP-3), and will select the matching output format (PCL2\nfor LOP and TPTP-2 inputs, TPTP-3 for TPTP-3 inputs).\n\nYou can check the proof objects in PCL format for correctness using\nthe tool checkproof in the same directory. \"checkproof -h\" should give\nyou all necessary information. Note that checkproof cannot yet deal\nwith the full first order part, and will skip anything not\nclausal. Also, support for independent provers in checkproof can be\nsubject to bit-rot, as other systems and interfaces change.\n\n\n\nBug reports and questions\n=========================\n\nWe welcome bug reports and even reasonable questions. If the prover\nbehaves in an unexpected way, please include the following\ninformation:\n\n- What did you observe?\n- What did you expect?\n- The output of `eprover --version`\n- The full commandline that lead to the unexpected behaviour\n- The input file(s) that lead to the unexpected behaviour\n\nMost bug reports should be send to \u003cschulz@eprover.org\u003e. Bug reports\nwith respect to the HO-version should also be send to\n\u003cjasmin.blanchette@gmail.com\u003e. Please remember that this is an unpaid\nvolunteer service ;-).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feprover%2Feprover","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feprover%2Feprover","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feprover%2Feprover/lists"}