def run!(program, options = {})

      # begin
      #   require 'eventmachine'
      # rescue LoadError
      #   warn "Parallel verification requires the eventmachine gem; disabling." if @parallel
      #   @parallel = false
      # end

      if options[:incremental] && options[:parallel]
        verify_parallel_accelerated program, options
      elsif options[:incremental]
        verify_incremental program, options
      else
        verify_one_shot program, options
      end
    end
def run!(program, options = {})

      # begin
      #   require 'eventmachine'
      # rescue LoadError
      #   warn "Parallel verification requires the eventmachine gem; disabling." if @parallel
      #   @parallel = false
      # end

      if options[:incremental] && options[:parallel]
        verify_parallel_accelerated program, options
      elsif options[:incremental]
        verify_incremental program, options
      else
        verify_one_shot program, options
      end
    end
option :verifier, "which verifier to use (boogie, corral, ...)"
 option :incremental, "do incremental verification?"
 option :parallel, "do verification in parallel?"
 option :unroll, "the loop/procedure unrolling bound"
 option :timeout, "verifier time limit"
 option :trace_file, "file for storage of traces"
 option :debug_solver, "enable solver debugging"