simulate_theorem_producer.h

Go to the documentation of this file.
00001 /*****************************************************************************/
00002 /*!
00003  *\file simulate_theorem_producer.h
00004  *\brief Implementation of the symbolic simulator proof rules
00005  *
00006  * Author: Sergey Berezin
00007  *
00008  * Created: Tue Oct  7 10:49:14 2003
00009  *
00010  * <hr>
00011  * Copyright (C) 2003 by the Board of Trustees of Leland Stanford
00012  * Junior University and by New York University. 
00013  *
00014  * License to use, copy, modify, sell and/or distribute this software
00015  * and its documentation for any purpose is hereby granted without
00016  * royalty, subject to the terms and conditions defined in the \ref
00017  * LICENSE file provided with this distribution.  In particular:
00018  *
00019  * - The above copyright notice and this permission notice must appear
00020  * in all copies of the software and related documentation.
00021  *
00022  * - THE SOFTWARE IS PROVIDED "AS-IS", WITHOUT ANY WARRANTIES,
00023  * EXPRESSED OR IMPLIED.  USE IT AT YOUR OWN RISK.
00024  * 
00025  * <hr>
00026  * 
00027  */
00028 /*****************************************************************************/
00029 
00030 #ifndef _cvcl__theory_simulate__simulate_theorem_producer_h_
00031 #define _cvcl__theory_simulate__simulate_theorem_producer_h_
00032 
00033 #include "theorem_producer.h"
00034 #include "simulate_proof_rules.h"
00035 
00036 namespace CVCL {
00037 
00038 class SimulateTheoremProducer:
00039     public SimulateProofRules, public TheoremProducer {
00040 public:
00041   //! Constructor
00042   SimulateTheoremProducer(TheoremManager* tm): TheoremProducer(tm) { }
00043   virtual ~SimulateTheoremProducer() { }
00044 
00045   virtual Theorem expandSimulate(const Expr& e);
00046 
00047   /*
00048 private:
00049   Expr substFreeTerm(const Expr& e, const Expr& oldE, const Expr& newE);
00050   Expr recursiveSubst(const Expr& e, const Expr& oldE, const Expr& newE,
00051                       ExprMap<Expr>& visited);
00052   */
00053 
00054 }; // end of class SimulateTheoremProducer
00055 
00056 } // end of namespace CVCL 
00057 
00058 #endif

Generated on Thu Apr 13 16:57:33 2006 for CVC Lite by  doxygen 1.4.4