Пример #1
0
        def make_graph(self):
            st = time.time()
            self.pair_mp_prop = [{'mp': tltl._simplify_all_term_in_mp(mp),
                                  'prop': tltl.get_proplist(mp)}
                                 for mp in self.pair[1]]
            self.graph = self._make_graph_by_opts()
            en = time.time()
            self.time.append(('make_graph(scc_u):', en - st))

            if not self.graph:
                #print "non-graph"
                raise ValueError
            else:
                #self._show_graph_info(self.graph)
                pass
Пример #2
0
def graph_ba(pair, opts):
    # input: TGBA
    # output: results{'graph', ''}
    #     
    results = {'mp-prop-pair':[]}
    # temp
    ltl = pair[0]
    mplist = pair[1]
    cmd_ltl3ba = './translator/ltl3ba -f ' + '\'' +tmtc.ltl_out(ltl)+ '\''
    st = time.time()
    ltl3ba = subprocess.Popen(cmd_ltl3ba,shell=True,close_fds=True,stdout=subprocess.PIPE)
    out = ltl3ba.stdout
    graph = gg.nvc2graph(out, st, opts)
    if graph:
        props = []
        for mp in mplist:
            results['mp-prop-pair'].append({'mp':tltl._simplify_all_term_in_mp(mp), 'prop':tltl.get_proplist(mp)})
        results['graph'] = graph
        # results['mplist'] = copy.deepcopy(mplist)
        # results['mpprops'] = props
        if opts.pdebug:
            print "    props:",props
        en = time.time()
        tctime = str(en-st)+'  -- ltl3ba -> Graph  Total Construction Time '
        print tctime
        results['time'] = tctime
        return results
    else:
        return False
Пример #3
0
def graph_tgba(pair, opts):
    # input: TGBA
    # output: results{'graph', 'time'}
    #     
    results = {'mp-prop-pair': []}

    ltl = pair[0]
    mp_list = pair[1]

    cmd_ltl2tgba = 'ltl2tgba --low -f ' + '\'' +tmtc.ltl_out(ltl)+ '\''
    st = time.time()
    constime = time.time()
    ltl2tgba = subprocess.Popen(cmd_ltl2tgba, shell=True, close_fds=True, stdout=subprocess.PIPE)
    out = ltl2tgba.stdout
    graph = gg.tgba2graph(out, constime, opts)
    if graph:
        props = []
        for mp in mp_list:
            results['mp-prop-pair'].append({'mp':tltl._simplify_all_term_in_mp(mp), 'prop':tltl.get_proplist(mp)})
        results['graph'] = graph
        if opts.pdebug: print "\t\tprops:", props
        en = time.time()
        tctime = str(en-st)
        print tctime + '  -- ltl2tgba -> Graph  Conversion Time '
        results['time'] = tctime
        return results
    else:
        return False