Subject: Fragments

Keywords: ::recipe
          ::bot
          ::implementation
          ::usage

Title: Interactive Fragment recipes 

--------------------------------------------------
  
See Interactive Fragment Pipeline


new_source_table (iobid InfoReplay`All` true (3,0) (iobid theories)
new_dekreitz_table `All` true (3,0) <interactive-source-obid>
 must activate proxy object

launch_interactive_fragment_generator `Mathematics`
  doesn't automatically join the editor, thus view replay object and join
launch_interactive_dekreitz (iobid <source table obid>) <edit-environment-stamp>
  edit-environment-stamp
      launches from lib so can not use (current_environment_stamp())
      eval current_environment_stamp() in EDD then cut and paste resulting term 
  activate InteractiveSource_<vers>_dbbot_dekreitz_... proxy object

add and set UpdateProvisonal property of replay bot to be T:b
  this is included in parms somehow and not props thus probably don't need to add to props

update INTERACTIVE_DEKREITZ of InteractiveFragmentReplay bot to be obid 
of interactive dekreitz dbbot

maybe clear properties_hashtable_clear frag_interactive_inf_cache
or restore  frag_table_inf_obids false `Interactive_Source_3_0`

launch_interactive_thin (iobid <dekreitz-table-obid>) <edit-environment-stamp>
  must activate proxy_object 

launch_interactive_alpha  <thin-obid> <edit-environment-stamp>
  activate
  thin obid is irrelevant? put Interactive thin dbbot?
  does not populate bot table from Thin tables
    for each thin table, run query using pattern in bot proxy to find 
    thin records with Interactive prop and no alpha and queue them to bot.
    see frag_interactive_thin_todo

launch_interactive_fragment_generator <theory-group>
  !! interactive_fragment_replay is the generator and here we launch it with some new props !!  
  reuses props from interactive_fragment_replay
    but updates ``DISPATCH APPENDP DB FragmentInteractive``
  theory group `Analysis` `Mathematics`
      avoids inserting source fragments for STMs not in theories for which
        fragments are being maintained.
      interactive_fragment_replay has `FragmentInteractive` property 
        which also specifies theory group
          this theory group limits whats added to Interactive_Source table 
            how is correct version of Interactive_Source table found?
              launch function's hardcoded dbargs prop points to Interactive_Source table
  maybe_update_provisional_replay_fragments uses frag_is_theory_active 
    and so on until frag_active_theory_p has hard coded reference to  
    interactive_fragment_replay where its `FragmentInteractive` property is 
    used to judge where theory of STM is active. 
  instead should somehow find `FragmentInteractive` property of ?generator?

Starts silently must Join* from button in body of interactive_fragment_replay
The frag bots can be resumed from proxy object menu.
  what is proxy object menu? probably the object menu of the interactive bot  

The replay_bot
 adds to source table found as first string of dbargs of DB prop of replay bot.
 queues new source fragments to bot found in INTERACTIVE_DEKREITZ prop of replay bot
   INTERACTIVE_DEKREITZ property should be set appropriately in the replay bots object term.
   ie INTERACTIVE_DEKREITZ: Interactive_Source_3_0_dbbot_dekreitz_3791567537
 

when interactive dekreitz fragments created how to they get added to interactive thin bot? 

How do partial subproofs get added to InteractiveReplay???
  after each refine, walk tree and look for complete subproofs?
  replay bot finds maximal complete subproofs when pobid queue to interactive replay.
      how to prevent redoing unaffect subtrees any time some other subtree completed?
          remember inf obids and maintain cache
            see: fragment_interactive_inf_obids, but local to refiner, should do in lib.
          dups not harmful except waste cpu/time 

 not sure this is correct:
   Must run Interactive replay bot until Source table has record 
   before you can start dekreitz bot since bogus failure if try to start bot with no
   records!
   If so, bit of conumdrum since interactive replay expects dekreitzer to be running
   as it needs to queue replayed sources to dekeritzer.


--------------------------------------------------

Authors: 

Contributors: NUPRL:t
              RICH:t



Home