亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? tl_trans.c

?? 對軟件進行可達性測試的軟件
?? C
?? 第 1 頁 / 共 2 頁
字號:
	/* find end of list */	for (p1 = a; p1->next; p1 = p1->next)		;	p1->next = b;	return a;}static voidfixinit(Node *orig){	Graph	*p1, *g;	Symbol	*q1, *q2 = ZS;	ng(tl_lookup("init"), ZS, ZN, ZN, ZN);	p1 = pop_stack();	p1->nxt = Nodes_Set;	p1->Other = p1->Old = orig;	Nodes_Set = p1;	for (g = Nodes_Set; g; g = g->nxt)	{	for (q1 = g->incoming; q1; q1 = q2)		{	q2 = q1->next;			Addout(g->name->name, q1->name);			tfree((void *) q1);		}		g->incoming = ZS;	}}static Node *flatten(Node *p){	Node *q, *r, *z = ZN;	for (q = p; q; q = q->nxt)	{	r = dupnode(q);		if (z)			z = tl_nn(AND, r, z);		else			z = r;	}	if (!z) return z;	z = rewrite(z);	return z;}static Node *Duplicate(Node *n){	Node *n1, *n2, *lst = ZN, *d = ZN;	for (n1 = n; n1; n1 = n1->nxt)	{	n2 = dupnode(n1);		if (lst)		{	lst->nxt = n2;			lst = n2;		} else			d = lst = n2;	}	return d;}static voidng(Symbol *s, Symbol *in, Node *isnew, Node *isold, Node *next){	Graph *g = (Graph *) tl_emalloc(sizeof(Graph));	if (s)     g->name = s;	else       g->name = tl_lookup(newname());	if (in)    g->incoming = dupSlist(in);	if (isnew) g->New  = flatten(isnew);	if (isold) g->Old  = Duplicate(isold);	if (next)  g->Next = flatten(next);	push_stack(g);}static voidsdump(Node *n){	switch (n->ntyp) {	case PREDICATE:	strcat(dumpbuf, n->sym->name);			break;	case U_OPER:	strcat(dumpbuf, "U");			goto common2;	case V_OPER:	strcat(dumpbuf, "V");			goto common2;	case OR:	strcat(dumpbuf, "|");			goto common2;	case AND:	strcat(dumpbuf, "&");common2:		sdump(n->rgt);common1:		sdump(n->lft);			break;#ifdef NXT	case NEXT:	strcat(dumpbuf, "X");			goto common1;#endif	case NOT:	strcat(dumpbuf, "!");			goto common1;	case TRUE:	strcat(dumpbuf, "T");			break;	case FALSE:	strcat(dumpbuf, "F");			break;	default:	strcat(dumpbuf, "?");			break;	}}Symbol *DoDump(Node *n){	if (!n) return ZS;	if (n->ntyp == PREDICATE)		return n->sym;	dumpbuf[0] = '\0';	sdump(n);	return tl_lookup(dumpbuf);}static intnot_new(Graph *g){	Graph	*q1; Node *tmp, *n1, *n2;	Mapping	*map;	tmp = flatten(g->Old);	/* duplicate, collapse, normalize */	g->Other = g->Old;	/* non normalized full version */	g->Old = tmp;	g->oldstring = DoDump(g->Old);	tmp = flatten(g->Next);	g->nxtstring = DoDump(tmp);	if (tl_verbose) dump_graph(g);	Debug2("\tformula-old: [%s]\n", g->oldstring?g->oldstring->name:"true");	Debug2("\tformula-nxt: [%s]\n", g->nxtstring?g->nxtstring->name:"true");	for (q1 = Nodes_Set; q1; q1 = q1->nxt)	{	Debug2("	compare old to: %s", q1->name->name);		Debug2(" [%s]", q1->oldstring?q1->oldstring->name:"true");		Debug2("	compare nxt to: %s", q1->name->name);		Debug2(" [%s]", q1->nxtstring?q1->nxtstring->name:"true");		if (q1->oldstring != g->oldstring		||  q1->nxtstring != g->nxtstring)		{	Debug(" => different\n");			continue;		}		Debug(" => match\n");		if (g->incoming)			q1->incoming = catSlist(g->incoming, q1->incoming);		/* check if there's anything in g->Other that needs		   adding to q1->Other		*/		for (n2 = g->Other; n2; n2 = n2->nxt)		{	for (n1 = q1->Other; n1; n1 = n1->nxt)				if (isequal(n1, n2))					break;			if (!n1)			{	Node *n3 = dupnode(n2);				/* don't mess up n2->nxt */				n3->nxt = q1->Other;				q1->Other = n3;		}	}		map = (Mapping *) tl_emalloc(sizeof(Mapping));	  	map->from = g->name->name;	  	map->to   = q1;	  	map->nxt = Mapped;	  	Mapped = map;		for (n1 = g->Other; n1; n1 = n2)		{	n2 = n1->nxt;			releasenode(1, n1);		}		for (n1 = g->Old; n1; n1 = n2)		{	n2 = n1->nxt;			releasenode(1, n1);		}		for (n1 = g->Next; n1; n1 = n2)		{	n2 = n1->nxt;			releasenode(1, n1);		}		return 1;	}	if (newstates) tl_verbose=1;	Debug2("	New Node %s [", g->name->name);	for (n1 = g->Old; n1; n1 = n1->nxt)	{ Dump(n1); Debug(", "); }	Debug2("] nr %d\n", Base);	if (newstates) tl_verbose=0;	Base++;	g->nxt = Nodes_Set;	Nodes_Set = g;	return 0;}static voidexpand_g(Graph *g){	Node *now, *n1, *n2, *nx;	int can_release;	if (!g->New)	{	Debug2("\nDone with %s", g->name->name);		if (tl_verbose) dump_graph(g);		if (not_new(g))		{	if (tl_verbose) printf("\tIs Not New\n");			return;		}		if (g->Next)		{	Debug("	Has Next [");			for (n1 = g->Next; n1; n1 = n1->nxt)			{ Dump(n1); Debug(", "); }			Debug("]\n");			ng(ZS, getsym(g->name), g->Next, ZN, ZN);		}		return;	}	if (tl_verbose)	{	Symbol *z;		printf("\nExpand %s, from ", g->name->name);		for (z = g->incoming; z; z = z->next)			printf("%s, ", z->name);		printf("\n\thandle:\t"); Explain(g->New->ntyp);		dump_graph(g);	}	if (g->New->ntyp == AND)	{	if (g->New->nxt)		{	n2 = g->New->rgt;			while (n2->nxt)				n2 = n2->nxt;			n2->nxt = g->New->nxt;		}		n1 = n2 = g->New->lft;		while (n2->nxt)			n2 = n2->nxt;		n2->nxt = g->New->rgt;		releasenode(0, g->New);		g->New = n1;		push_stack(g);		return;	}	can_release = 0;	/* unless it need not go into Old */	now = g->New;	g->New = g->New->nxt;	now->nxt = ZN;	if (now->ntyp != TRUE)	{	if (g->Old)		{	for (n1 = g->Old; n1->nxt; n1 = n1->nxt)				if (isequal(now, n1))				{	can_release = 1;					goto out;				}			n1->nxt = now;		} else			g->Old = now;	}out:	switch (now->ntyp) {	case FALSE:		push_stack(g);		break;	case TRUE:		releasenode(1, now);		push_stack(g);		break;	case PREDICATE:	case NOT:		if (can_release) releasenode(1, now);		push_stack(g);		break;	case V_OPER:		Assert(now->rgt != ZN, now->ntyp);		Assert(now->lft != ZN, now->ntyp);		Assert(now->rgt->nxt == ZN, now->ntyp);		Assert(now->lft->nxt == ZN, now->ntyp);		n1 = now->rgt;		n1->nxt = g->New;		if (can_release)			nx = now;		else			nx = getnode(now); /* now also appears in Old */		nx->nxt = g->Next;		n2 = now->lft;		n2->nxt = getnode(now->rgt);		n2->nxt->nxt = g->New;		g->New = flatten(n2);		push_stack(g);		ng(ZS, g->incoming, n1, g->Old, nx);		break;	case U_OPER:		Assert(now->rgt->nxt == ZN, now->ntyp);		Assert(now->lft->nxt == ZN, now->ntyp);		n1 = now->lft;		if (can_release)			nx = now;		else			nx = getnode(now); /* now also appears in Old */		nx->nxt = g->Next;		n2 = now->rgt;		n2->nxt = g->New;		goto common;#ifdef NXT	case NEXT:		Assert(now->lft != ZN, now->ntyp);		nx = dupnode(now->lft);		nx->nxt = g->Next;		g->Next = nx;		if (can_release) releasenode(0, now);		push_stack(g);		break;#endif	case OR:		Assert(now->rgt->nxt == ZN, now->ntyp);		Assert(now->lft->nxt == ZN, now->ntyp);		n1 = now->lft;		nx = g->Next;		n2 = now->rgt;		n2->nxt = g->New;common:		n1->nxt = g->New;		ng(ZS, g->incoming, n1, g->Old, nx);		g->New = flatten(n2);		if (can_release) releasenode(1, now);		push_stack(g);		break;	}}Node *twocases(Node *p){	Node *q;	/* 1: ([]p1 && []p2) == [](p1 && p2) */	/* 2: (<>p1 || <>p2) == <>(p1 || p2) */	if (!p) return p;	switch(p->ntyp) {	case AND:	case OR:	case U_OPER:	case V_OPER:		p->lft = twocases(p->lft);		p->rgt = twocases(p->rgt);		break;#ifdef NXT	case NEXT:#endif	case NOT:		p->lft = twocases(p->lft);		break;	default:		break;	}	if (p->ntyp == AND	/* 1 */	&&  p->lft->ntyp == V_OPER	&&  p->lft->lft->ntyp == FALSE	&&  p->rgt->ntyp == V_OPER	&&  p->rgt->lft->ntyp == FALSE)	{	q = tl_nn(V_OPER, False,			tl_nn(AND, p->lft->rgt, p->rgt->rgt));	} else	if (p->ntyp == OR	/* 2 */	&&  p->lft->ntyp == U_OPER	&&  p->lft->lft->ntyp == TRUE	&&  p->rgt->ntyp == U_OPER	&&  p->rgt->lft->ntyp == TRUE)	{	q = tl_nn(U_OPER, True,			tl_nn(OR, p->lft->rgt, p->rgt->rgt));	} else		q = p;	return q;}voidtrans(Node *p){	Node	*op;	Graph	*g;	if (!p || tl_errs) return;	p = twocases(p);	if (tl_verbose || tl_terse)	{	fprintf(tl_out, "\t/* Normlzd: ");		dump(p);		fprintf(tl_out, " */\n");	}	if (tl_terse)		return;	op = dupnode(p);	ng(ZS, getsym(tl_lookup("init")), p, ZN, ZN);	while ((g = Nodes_Stack) != (Graph *) 0)	{	Nodes_Stack = g->nxt;		expand_g(g);	}	if (newstates)		return;	fixinit(p);	liveness(flatten(op));	/* was: liveness(op); */	mkbuchi();	if (tl_verbose)	{	printf("/*\n");		printf(" * %d states in Streett automaton\n", Base);		printf(" * %d Streett acceptance conditions\n", Max_Red);		printf(" * %d Buchi states\n", Total);		printf(" */\n");	}}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久免费视频色| 欧美日韩免费不卡视频一区二区三区| 精品国产免费久久| 国产尤物一区二区| 国产亚洲一区二区在线观看| 高清不卡一区二区| 亚洲视频一二区| 日本高清不卡视频| 午夜精品国产更新| 日韩视频国产视频| 成人中文字幕合集| 亚洲精品国产成人久久av盗摄| 欧美在线视频全部完| 免费观看一级欧美片| 欧美激情自拍偷拍| 色94色欧美sute亚洲线路一ni| 婷婷六月综合亚洲| 亚洲精品一区二区三区四区高清| 丁香桃色午夜亚洲一区二区三区| 亚洲精品亚洲人成人网在线播放| 欧美福利电影网| 国产成人在线视频播放| 亚洲自拍都市欧美小说| 精品国产网站在线观看| 99精品欧美一区二区三区小说| 亚洲成在线观看| 久久精品日产第一区二区三区高清版| 中文字幕色av一区二区三区| 91成人国产精品| 精品一区二区三区在线观看| 国产精品丝袜在线| 欧美一区午夜视频在线观看| 成人久久久精品乱码一区二区三区| 亚洲精品日产精品乱码不卡| 精品入口麻豆88视频| 色综合天天做天天爱| 蜜桃一区二区三区在线| 专区另类欧美日韩| 精品国产网站在线观看| 欧美亚洲综合色| 国产精品一区二区男女羞羞无遮挡| 亚洲欧美一区二区三区孕妇| 久久伊人中文字幕| 69久久99精品久久久久婷婷| 成人免费高清在线| 国内精品免费在线观看| 日韩在线观看一区二区| 1024精品合集| 中文字幕高清不卡| 亚洲免费伊人电影| 日韩美女天天操| 91激情在线视频| 成人午夜免费电影| 久久电影国产免费久久电影| 亚洲高清中文字幕| 亚洲天堂精品视频| 中文字幕第一页久久| 日韩免费电影网站| 欧美一级在线免费| 欧美日韩亚州综合| 欧美综合天天夜夜久久| 不卡的av电影| 成人综合激情网| 国产精品一区二区91| 另类调教123区| 日韩国产在线一| 视频一区视频二区中文字幕| 亚洲自拍偷拍综合| 亚洲国产精品一区二区www| 亚洲欧美日韩精品久久久久| 国产农村妇女毛片精品久久麻豆 | 国产精品久久久久久久久久久免费看| 91精品国产美女浴室洗澡无遮挡| 91激情五月电影| 在线精品视频小说1| 91免费版在线| 97精品超碰一区二区三区| 成人网页在线观看| av电影天堂一区二区在线观看| 成人一区在线观看| a在线欧美一区| 91麻豆免费在线观看| 91精品1区2区| 欧美日韩精品三区| 欧美精品一卡两卡| 欧美不卡视频一区| 亚洲精品一区二区三区99| 久久蜜桃av一区精品变态类天堂 | 麻豆极品一区二区三区| 免费成人在线网站| 精品午夜一区二区三区在线观看| 国内精品自线一区二区三区视频| 国产一区二区免费在线| 国产不卡视频在线播放| 99r国产精品| 欧美日韩亚洲综合一区二区三区 | 欧美精品一区二区三区蜜桃视频| 久久综合狠狠综合久久激情 | 一区二区三区四区av| 亚洲成人动漫精品| 免费在线观看一区二区三区| 国产一区二区三区蝌蚪| 成人禁用看黄a在线| 日本道在线观看一区二区| 欧美三级韩国三级日本三斤| 日韩视频永久免费| 中文字幕久久午夜不卡| 亚洲成av人片一区二区三区 | 亚洲午夜久久久久| 伦理电影国产精品| av成人免费在线观看| 欧美猛男男办公室激情| 久久蜜臀精品av| 亚洲国产精品久久不卡毛片| 久久成人免费日本黄色| 91色在线porny| 日韩欧美电影在线| 亚洲欧美自拍偷拍色图| 青娱乐精品在线视频| 成人小视频免费观看| 欧美乱妇15p| 国产精品第五页| 奇米四色…亚洲| 色94色欧美sute亚洲线路一ni| 亚洲精品一区二区三区在线观看 | 日韩精品影音先锋| 亚洲少妇30p| 久久99国产乱子伦精品免费| 色综合天天综合色综合av| 日韩一级大片在线| 伊人色综合久久天天人手人婷| 精品一区二区免费看| 欧美午夜精品久久久久久孕妇 | 日韩精品一区二区三区中文精品| 成人欧美一区二区三区视频网页| 日本在线不卡一区| 色先锋aa成人| 欧美激情综合五月色丁香小说| 日精品一区二区三区| 91麻豆自制传媒国产之光| 国产亚洲欧美色| 免费av网站大全久久| 在线观看91精品国产入口| 国产精品欧美一区喷水| 精品在线一区二区| 日韩一区二区电影网| 亚洲一级二级在线| 91在线播放网址| 日本一区二区久久| 国产精品香蕉一区二区三区| 日韩欧美一二区| 日韩影院精彩在线| 欧美日韩视频在线第一区| 国产精品丝袜黑色高跟| 国产在线精品免费| 欧美大白屁股肥臀xxxxxx| 亚洲va欧美va人人爽| 欧美羞羞免费网站| 亚洲自拍与偷拍| 欧美在线不卡视频| 夜夜精品视频一区二区| 91福利国产精品| 亚洲制服丝袜av| 欧美婷婷六月丁香综合色| 亚洲卡通欧美制服中文| 99久免费精品视频在线观看 | 在线免费亚洲电影| 一区二区三区精品在线观看| 91视频一区二区| 亚洲在线视频免费观看| 欧美午夜不卡在线观看免费| 亚洲国产精品久久不卡毛片| 欧美日韩国产精品成人| 亚洲一区二区三区在线看| 欧美日韩一区二区在线观看| 亚洲国产综合91精品麻豆| 欧美日韩一区二区三区四区五区 | 色伊人久久综合中文字幕| 亚洲一区二区在线观看视频| 欧美日韩国产欧美日美国产精品| 午夜激情久久久| 欧美一级黄色片| 国产美女av一区二区三区| 国产校园另类小说区| av成人动漫在线观看| 一区二区理论电影在线观看| 欧美日韩在线播放一区| 久久99精品国产麻豆婷婷| 国产欧美一区二区精品性色 | 538在线一区二区精品国产| 奇米一区二区三区| 国产欧美日韩激情| 在线视频一区二区三| 秋霞成人午夜伦在线观看| 久久精品一区八戒影视| 色素色在线综合| 久久精品国产一区二区| 国产精品久久久久久亚洲伦| 欧美亚洲高清一区| 国产乱对白刺激视频不卡|