%define upstreamname LADR %define upstreamver 2008-05A Name: prover9 Version: 200805a Release: 4%{?dist} Summary: Thereom Prover and Countermodel Generator Group: Applications/Productivity # All files are GPLv2 except utilities/gvizify which is GPLv2+ License: GPLv2 and GPLv2+ URL: http://www.cs.unm.edu/~mccune/prover9/ Source0: http://www.cs.unm.edu/~mccune/prover9/download/%{upstreamname}-%{upstreamver}.tar.gz Source1: http://www.cs.unm.edu/~mccune/prover9/manual/%{name}-manual-%{upstreamver}.tar.gz Patch0: %{name}-no-2.5isms.patch Patch1: %{name}-manpages.patch Patch2: %{name}-fedora.patch BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) BuildRequires: libtool # Fails test2 in check section on ppc64 architecture ExcludeArch: ppc64 %description This package provides the Prover9 resolution/paramodulation theorem prover and the Mace4 countermodel generator. Prover9 is an automated theorem prover for first-order and equational logic. It is a successor of the Otter prover. Prover9 uses the inference techniques of ordered resolution and paramodulation with literal selection. The program Mace4 searches for finite structures satisfying first-order and equational statements, the same kind of statement that Prover9 accepts. If the statement is the denial of some conjecture, any structures found by Mace4 are counterexamples to the conjecture. Mace4 can be a valuable complement to Prover9, looking for counterexamples before (or at the same time as) using Prover9 to search for a proof. It can also be used to help debug input clauses and formulas for Prover9. %package devel Group: Development/Libraries Summary: LADR Deduction Library - Development Files Requires: %{name} = %{version}-%{release} Provides: %{name}-static = %{version}-%{release} %description devel LADR (Library for Automated Deduction Research) is a library for use in constructing theorem provers. Among other useful routines it provides facilities for applying inference rules such as resolution and paramodulation to clauses. LADR is used by the prover9 theorem prover, and by the mace4 countermodel generator. This package provides development support files and static development libraries for LADR. %package apps Group: Applications/Productivity Summary: LADR Deduction Library - Miscellaneous Applications Requires: %{name} = %{version}-%{release} %description apps LADR (Library for Automated Deduction Research) is a library for use in constructing theorem provers. Among other useful routines it provides facilities for applying inference rules such as resolution and paramodulation to clauses. LADR is used by the prover9 theorem prover, and by the mace4 countermodel generator. This package provides miscellaneous LADR applications. %package doc Group: Documentation Summary: LADR Deduction Library - Documentation Requires: %{name} = %{version}-%{release} %description doc Prover9 is an automated theorem prover for first-order and equational logic. It is a successor of the Otter prover. Prover9 uses the inference techniques of ordered resolution and paramodulation with literal selection. This package provides documentation for Prover9, Mace4 and other associated programs. %prep %setup -q -n %{upstreamname}-%{upstreamver} -a 1 %patch0 -p1 %patch1 -p1 %patch2 -p0 %build make all CFLAGS="%{optflags}" %install %{__rm} -rf %{buildroot} %{__install} -p -d -m 0755 %{buildroot}%{_bindir} for f in bin/*; do %{__install} -p -m 0755 $f %{buildroot}%{_bindir}/%{name}-`basename $f` done %{__rm} %{buildroot}%{_bindir}/%{name}-proof3fo.xsl %{__rm} %{buildroot}%{_bindir}/%{name}-prover9-mace4 %{__rm} %{buildroot}%{_bindir}/%{name}-test_clause_eval %{__mv} %{buildroot}%{_bindir}/%{name}-mace4 %{buildroot}%{_bindir}/mace4 %{__mv} %{buildroot}%{_bindir}/%{name}-prover9 %{buildroot}%{_bindir}/prover9 # manpages %{__install} -p -d -m 0755 %{buildroot}%{_mandir}/man1 %{__install} -p -m 0644 manpages/interpformat.1 %{buildroot}%{_mandir}/man1/%{name}-interpformat.1 %{__install} -p -m 0644 manpages/isofilter.1 %{buildroot}%{_mandir}/man1/%{name}-isofilter.1 %{__ln_s} %{name}-isofilter.1.gz %{buildroot}%{_mandir}/man1/%{name}-isofilter0.1.gz %{__ln_s} %{name}-isofilter.1.gz %{buildroot}%{_mandir}/man1/%{name}-isofilter2.1.gz %{__install} -p -m 0644 manpages/prooftrans.1 %{buildroot}%{_mandir}/man1/%{name}-prooftrans.1 %{__install} -p -m 0644 manpages/mace4.1 %{buildroot}%{_mandir}/man1 %{__install} -p -m 0644 manpages/prover9.1 %{buildroot}%{_mandir}/man1 # header files and libraries for devel package %{__install} -p -d -m 0755 %{buildroot}%{_includedir}/ladr %{__install} -p -m 0644 ladr/*.h %{buildroot}%{_includedir}/ladr %{__install} -p -d -m 0755 %{buildroot}%{_libdir} %{__install} -p -m 0644 ladr/lib*.a %{buildroot}%{_libdir} # manpages for apps package %{__install} -p -m 0644 manpages/clausefilter.1 %{buildroot}%{_mandir}/man1/%{name}-clausefilter.1 %{__install} -p -m 0644 manpages/clausetester.1 %{buildroot}%{_mandir}/man1/%{name}-clausetester.1 %{__install} -p -m 0644 manpages/interpfilter.1 %{buildroot}%{_mandir}/man1/%{name}-interpfilter.1 %{__install} -p -m 0644 manpages/rewriter.1 %{buildroot}%{_mandir}/man1/%{name}-rewriter.1 %{__install} -p -m 0644 manpages/prover9-apps.1 %{buildroot}%{_mandir}/man1 # fix incorrect permission on one of the example scripts chmod 0644 apps.examples/run-all %clean %{__rm} -rf %{buildroot} %check make test1 test2 test3 %files %defattr(-,root,root,-) %doc Changelog COPYING TODO copyright mace4.examples prover9.examples %{_bindir}/mace4 %{_bindir}/prover9 %{_bindir}/%{name}-interpformat %{_bindir}/%{name}-isofilter %{_bindir}/%{name}-isofilter0 %{_bindir}/%{name}-isofilter2 %{_bindir}/%{name}-prooftrans %{_mandir}/man1/mace4.1.gz %{_mandir}/man1/prover9.1.gz %{_mandir}/man1/%{name}-interpformat.1.gz %{_mandir}/man1/%{name}-isofilter.1.gz %{_mandir}/man1/%{name}-isofilter0.1.gz %{_mandir}/man1/%{name}-isofilter2.1.gz %{_mandir}/man1/%{name}-prooftrans.1.gz %files devel %defattr(-,root,root,-) %doc ladr/html %{_includedir}/ladr %{_libdir}/lib*.a %files apps %defattr(-,root,root,-) %doc apps.examples apps.src/README.directproof %{_bindir}/%{name}-attack %{_bindir}/%{name}-autosketches4 %{_bindir}/%{name}-clausefilter %{_bindir}/%{name}-clausetester %{_bindir}/%{name}-directproof %{_bindir}/%{name}-dprofiles %{_bindir}/%{name}-fof-prover9 %{_bindir}/%{name}-get_givens %{_bindir}/%{name}-get_interps %{_bindir}/%{name}-get_kept %{_bindir}/%{name}-gvizify %{_bindir}/%{name}-idfilter %{_bindir}/%{name}-interpfilter %{_bindir}/%{name}-ladr_to_tptp %{_bindir}/%{name}-latfilter %{_bindir}/%{name}-looper %{_bindir}/%{name}-miniscope %{_bindir}/%{name}-mirror-flip %{_bindir}/%{name}-newauto %{_bindir}/%{name}-newsax %{_bindir}/%{name}-olfilter %{_bindir}/%{name}-perm3 %{_bindir}/%{name}-renamer %{_bindir}/%{name}-rewriter %{_bindir}/%{name}-sigtest %{_bindir}/%{name}-tptp_to_ladr %{_bindir}/%{name}-unfast %{_bindir}/%{name}-upper-covers %{_mandir}/man1/prover9-apps.1.gz %{_mandir}/man1/%{name}-clausefilter.1.gz %{_mandir}/man1/%{name}-clausetester.1.gz %{_mandir}/man1/%{name}-interpfilter.1.gz %{_mandir}/man1/%{name}-rewriter.1.gz %files doc %defattr(-,root,root,-) %doc %{name}-manual-%{upstreamver}/*.{html,css,gif} %changelog * Wed Jul 09 2008 Tim Colles - 200805a-4 - exclude ppc64 architecture as test2 fails * Tue Jul 08 2008 Tim Colles - 200805a-3 - make -apps require base package instead of other way around - added check section to run built-in tests - fix perms on static library - fix perms on example script - use name prefix and install all binaries in /usr/bin - add name prefix to manpages, drop symlinks for missing manpages * Fri Jun 06 2008 Tim Colles - 200805a-2 - dropped libtoolize patch and stopped shipping shared libraries - changed build to use rpm optflags - added -p flag to preserve timestamps - install all binaries except mace4/prover9 to /usr/lib/prover9/bin * Fri Jun 06 2008 Tim Colles - 200805a-1 - renamed as prover9 - redesigned borrowing heavily from the Debian package by Peter Collingbourne - included patches from Debian package by Peter Collingbourne - added documentation source/package - updated version * Thu Jan 10 2008 Tim Colles - 200712-1 - initial version