1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
% -----------------------------------------------------------------------------
% (C) Altran Praxis Limited
% -----------------------------------------------------------------------------
%
% The SPARK toolset is free software; you can redistribute it and/or modify it
% under terms of the GNU General Public License as published by the Free
% Software Foundation; either version 3, or (at your option) any later
% version. The SPARK toolset is distributed in the hope that it will be
% useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
% Public License for more details. You should have received a copy of the GNU
% General Public License distributed with the SPARK toolset; see file
% COPYING3. If not, go to http://www.gnu.org/licenses for a complete copy of
% the license.
%
% =============================================================================
%###############################################################################
% PURPOSE
%-------------------------------------------------------------------------------
% Top level file, to build the Checker.
%###############################################################################
%###############################################################################
% DEPENDENCIES
%###############################################################################
%###############################################################################
% TYPES
%###############################################################################
%###############################################################################
% DATA
%###############################################################################
%###############################################################################
% PREDICATES
%###############################################################################
%===============================================================================
% LOAD ENHANCED DEFECT REPORTING
%===============================================================================
:- use_module('../simplifier/defectreporting.pro').
%===============================================================================
%===============================================================================
% DYNAMIC FEATURES PRE-LOAD
%===============================================================================
% Establish sicstus settings.
:- set_prolog_flag(unknown, error).
% Establish all dynamic predicates.
:- include('dynamics.pro').
%===============================================================================
%===============================================================================
%FIXED SYSTEM CONFIGURATION
%-------------------------------------------------------------------------------
%This information will be the same for every execution of the tool.
%===============================================================================
:-use_module('../simplifier/data__system.pro',
[add_system_toolname/1]).
:-add_system_toolname('Proof Checker').
%===============================================================================
%===============================================================================
% LOAD SYSTEM
%===============================================================================
:- include('loadsicstus.pro').
%===============================================================================
%===============================================================================
% runtime_entry(start).
%-------------------------------------------------------------------------------
% This is a special Sicstus predicate, which will be automatically invoked
% when restoring a saved state. It is the top level, or main, predicate.
%===============================================================================
runtime_entry(start):-
startup_sequence,
halt(0),
!.
%===============================================================================
%===============================================================================
% BUILD SAV AND HALT
%===============================================================================
buildsav:-
zero_defects_reported,
save_program('checker.sav'),
halt(0).
buildsav:-
report_total_defects,
halt(1).
swisav_checker:-
zero_defects_reported,
qsave_program('checker', [autoload(true), goal(runtime_entry(start)), stand_alone(false)]),
halt(0).
swisav_checker:-
report_total_defects,
halt(1).
%===============================================================================
%###############################################################################
%END-OF-FILE
|