Changeset 11229 for trunk/Proofs/InferBasic.hs
- Timestamp:
- 07.01.2009 14:11:49 (14 months ago)
- Files:
-
- 1 modified
-
trunk/Proofs/InferBasic.hs (modified) (10 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Proofs/InferBasic.hs
r11117 r11229 51 51 import GUI.Utils 52 52 import GUI.ProofManagement 53 import GUI.History(CommandHistory, addProveToHist)53 -- import GUI.History(CommandHistory, addProveToHist) 54 54 55 55 import qualified Common.Lib.Graph as Tree … … 153 153 basicInferenceNode :: Bool -- ^ True = CheckConsistency; False = Prove 154 154 -> LogicGraph -> (LIB_NAME,Node) -> LIB_NAME 155 -> GUIMVar -> LibEnv -> CommandHistory 155 -> GUIMVar -> LibEnv 156 -- -> CommandHistory 156 157 -> IO (Result (LibEnv, Result G_theory)) 157 basicInferenceNode checkCons lg (ln, node) libname guiMVar libEnv ch = do 158 basicInferenceNode checkCons lg (ln, node) libname guiMVar libEnv 159 -- ch 160 = do 158 161 let dGraph = lookupDGraph libname libEnv 159 162 runResultT $ do … … 211 214 newTh <- ResultT $ 212 215 proofManagementGUI lid1 ProofActions { 213 proveF = (proveKnownPMap lg chfreedefs),214 fineGrainedSelectionF = (proveFineGrainedSelect lg chfreedefs),216 proveF = (proveKnownPMap lg freedefs), 217 fineGrainedSelectionF = (proveFineGrainedSelect lg freedefs), 215 218 recalculateSublogicF = 216 219 recalculateSublogicAndSelectedTheory } … … 238 241 -> (LIB_NAME,Node) 239 242 -> GUIMVar 240 - > CommandHistory243 -- -> CommandHistory 241 244 -> LibEnv 242 245 -> IO (Result (LibEnv, Result G_theory)) 243 basicInferenceSubTree checkCons lg (ln, node) guiMVar chlibEnv = do246 basicInferenceSubTree checkCons lg (ln, node) guiMVar libEnv = do 244 247 let dGraph = lookupDGraph ln libEnv 245 248 runResultT $ do … … 308 311 newTh <- ResultT $ 309 312 proofManagementGUI lid1 ProofActions { 310 proveF = (proveKnownPMap lg chfreedefs),311 fineGrainedSelectionF = (proveFineGrainedSelect lg chfreedefs),313 proveF = (proveKnownPMap lg freedefs), 314 fineGrainedSelectionF = (proveFineGrainedSelect lg freedefs), 312 315 recalculateSublogicF = 313 316 recalculateSublogicAndSelectedTheory } … … 340 343 raw_symbol1 341 344 proof_tree1) => 342 LogicGraph -> CommandHistory 345 LogicGraph 346 -- -> CommandHistory 343 347 -> [FreeDefMorphism sentence morphism1] 344 348 -> ProofState lid sentence -> IO (Result (ProofState lid sentence)) 345 proveKnownPMap lg chfreedefs st =346 maybe (proveFineGrainedSelect lg chfreedefs st)347 (callProver st chFalse freedefs) $349 proveKnownPMap lg freedefs st = 350 maybe (proveFineGrainedSelect lg freedefs st) 351 (callProver st False freedefs) $ 348 352 lookupKnownProver st ProveGUI 349 353 … … 359 363 proof_tree1) => 360 364 ProofState lid sentence 361 -> CommandHistory -> Bool -- indicates if a translation was chosen 365 -- -> CommandHistory 366 -> Bool -- indicates if a translation was chosen 362 367 -> [FreeDefMorphism sentence morphism1] 363 368 -> (G_prover,AnyComorphism) -> IO (Result (ProofState lid sentence)) 364 callProver st chtrans_chosen freedefs p_cm@(_,acm) =369 callProver st trans_chosen freedefs p_cm@(_,acm) = 365 370 runResultT $ do 366 371 G_theory_with_prover lid th p <- liftR $ prepareForProving st p_cm … … 372 377 -- lift $ putStrLn $ show ps 373 378 let st' = markProved acm lid ps st 374 lift $ addProveToHist ch st'375 (if trans_chosen then Just p_cm else Nothing) ps379 -- lift $ addProveToHist ch st' 380 -- (if trans_chosen then Just p_cm else Nothing) ps 376 381 return st' 377 382 … … 387 392 raw_symbol1 388 393 proof_tree1) => 389 LogicGraph - > CommandHistory394 LogicGraph -- -> CommandHistory 390 395 -> [FreeDefMorphism sentence morphism1] 391 396 -> ProofState lid sentence -> IO (Result (ProofState lid sentence)) 392 proveFineGrainedSelect lg chfreedefs st =397 proveFineGrainedSelect lg freedefs st = 393 398 runResultT $ do 394 399 let sl = sublogicOfTheory st … … 400 405 pr <- selectProver cmsToProvers 401 406 ResultT $ callProver st{lastSublogic = sublogicOfTheory st, 402 comorphismsToProvers = cmsToProvers} chTrue freedefs pr407 comorphismsToProvers = cmsToProvers} True freedefs pr