d d/ /
P 0 d P 0 +d P 0 +d d P 0 +d=p 0 -d/ d/
P 0 P 0 +d=p 0 -d/ d/ Tayler d P 0 +dp 0 /dd dp 0 /dd= -P 0 d/ d/ /P 0 dp 0 /d= -/ / /P 0 dp 0 = -/ / d logp 0 =-/ /+cons. P 0 =e -/ / =0 0 0
+d f d d f d=p 0 d/ d/=e -/ / / d f =e -/ / / [ ] / / λ λ e / λd = e 0 = 0 = 0 λ / e d λ = λ 0
= y=e - =/ y=e -/ / y=e / / = y=e - = =/ y=e -/ y=e / / / =
[ ] λ λ λ λ λ / / 0 / 0 / / e e e d e = = = = = =/ / y y y e y log log / log / λ λ λ λ = = = = /λ e y =
y = e /λ
y = e /λ y = e / λ log y = / λ = λlog y = λlog y
F X U0 U< X=F - U 0
rnd 0 double ep_rndin { reurn *log/rnd;} a b ep_rnda ep_rndb
. 0 ep_rnda. ep_rndb 3. 3. 3a ep_rnda. 3b.
queue.c #include <sdio.h> #include <mah.h> 3 #include <sdlib.h> 4 #define NofClerk 3 5 enum even_ype {arivalfinish}; 6 sruc even_node { 7 long ime; 8 enum even_ype ype; 9 in clerk_id; 0 sruc even_node *ne; }; long mean_arival_inerval; 3 long mean_operaion_inerval; 4 long qui_ime; 5 in clerk_busy[nofclerk]; 6 in nof_person_in_queue; 7 long curren_ime; 8 sruc even_node *even_roo; 9 void even_addlong inervalenum even_ype ypein clerk_id; 0 long ep_rndlong mean_inerval; BSD
queue.c main in mainin argcchar **argv{ in i; 3 sruc even_node *rm_even; 4 ifargc!=4{ 5 prinf"usage: queue arival_inerval operaion_inerval qui_ime n"; 6 reurn ; 7 } 8 sscanfargv[]"%d"&mean_arival_inerval; 9 sscanfargv[]"%d"&mean_operaion_inerval; 30 sscanfargv[3]"%d"&qui_ime; 3 fori=0;i<nofclerk;i++ clerk_busy[i]=0; 3 nof_person_in_queue=; 33 curren_ime=0; 34 even_roo=null; 35 even_addep_rndmean_arival_inervalarival0;. 66 }
36 for;;{ 37 ifcurren_ime>qui_imereurn 0; 44 for;;{ 45 if!nof_person_in_queue break; 46 fori=0;i<nofclerk;i++{ 47 if!clerk_busy[i] break; 48 } 49 ifi==nofclerk break; 50 clerk_busy[i]++; 5 nof_person_in_queue--; 5 even_addep_rndmean_operaion_inervalfinishi; 53 } 54 rm_even=even_roo; 55 even_roo=rm_even->ne; 56 curren_ime=rm_even->ime; 57 ifrm_even->ype==arival{ 58 nof_person_in_queue++; 59 even_addep_rndmean_arival_inervalarival0; 60 } 6 else ifrm_even->ype==finish 6 clerk_busy[rm_even->clerk_id]=0; 63 else ; 64 freerm_even; 65 } queue.c main 38 /*++++++++++++++++++++++++++++*/ 39 prinf"ime=%3d nof_p=%3d" curren_imenof_person_in_queue; 40 fori=0;i<nofclerk;i++ 4 prinf" busy[%d]=%d"iclerk_busy[i]; 4 prinf" n"; 43 /*++++++++++++++++++++++++++++*/
67 void even_addlong inervalenum even_ype ypein clerk_id{ 68 sruc even_node *new_even; 69 sruc even_node *even; 70 new_even=sruc even_node *mallocsizeofsruc even_node; 7 new_even->ime=curren_ime+inerval; 7 new_even->ype=ype; 73 new_even->clerk_id=clerk_id; 74 ifeven_roo==null{ 75 new_even->ne=null; 76 even_roo=new_even; 77 reurn; 78 } 79 ifeven_roo->ime>new_even->ime{ 80 new_even->ne=even_roo; 8 even_roo=new_even; 8 reurn; 83 } 84 foreven=even_roo;;even=even->ne{ 85 ifeven->ne==null{ 86 new_even->ne=null; 87 even->ne=new_even; 88 reurn; 89 } 90 ifeven->ne->ime>new_even->ime{ 9 new_even->ne=even->ne; 9 even->ne=new_even; 93 reurn; 94 } 95 } 96 } queue.c even_add
queue.c ep_rnd 97 long ep_rndlong mean_inerval{ 98 double r; 99 r=doublemean_inerval*logdoublerand_max/doublerandom; 00 reurn longr; 0 } random0 RAND_MAX
v e v e3 e e5 e4 e6 e7 v3 e8 v4
G= =V E V V V V V v e v e3 V ={v v 3 } V ={v v 4 } e v3 e5 e4 e8 e6 v4 e7 E ={e e 4 e 5 e 8 } CE =V V
G =V E G =V E E E G G G G G G
G= =VE G G
A B readera wrier readerb
sae machine
marked graph
NG OK OK NG
free choice ne
fork join selec
simple Peri ne
Peri Peri
TOP Daa Flow Diagram
DFD
DFD
TOP MiniSpec
Mealey 500 500 0 500 500 500 000 500 500 000 000
A B C D A=BCD E=F+G+H J=K* E F o G o H o J K*
* o o
decision ree 5g 90 50g60 5g0 50g90 5g30 50g30
decision able decision able 3
3 4 3 4 3 4 3
BDD 3 90 no yes 5g no yes no no yes yes
GFq q m p p { 0 L p } p mod p
i + F F F GF p GF p m GF p m
m F GF m p F α m GF p α m 0 p α = α α L α m p α p m = m GF p
α m F F α = 0 α m Gα m α m = Gα m m GF p i α α m i m α = a0 + aα + L + am α a 0 a m a L 0 a m a a L m GF p
GF + 0 -- 0 / 0 0 0 0 0 0 0 0 --- 0 0 GF m α + α = + α = 0 α = α 4 + + 4
b b F = f 0 + f + L + fb + b α GF b α α
a0 a L a b GF b a = a 0 + aα + L + a b α b α α
3 3 b a b a a a α α α α 0 + + + = L b α 0 0 = + + + + = b b f b f f F α α α α L 0 + + + = b b b f f f α α α L 0 0 + + + + + = b b b b b b f a a f a a f a a α α α L a α 0 0 + + b b b b b f a a f a a f a L
a α 0 0 + + b b b b b f a a f a a f a L 0 0 0 0 0 0 0 0 0 0 0 b b f f f f a a a L L L L L L L L L L a 0 a b a a L
f f a 0 a a b- f 0 f f f b- M
++ 4 M ++ 4 =++0 +0 +0 3 + 4 a 0 a a a 3 a 0 a a a 3
Mersenne Twiser GF 9937 0 0 = 3... ^9937- ^9937-9937 ^9937-0 3...
M - M 3573793689 0775607790383745 3443 968999439937 993770... 998 37 30377
0 d p = md m = nt n p00= p0=0 0 p+t=/p-d+/p+d
d d d p p d p d p T d T p T p + = + d p p p d p p T p + = +
d d d p p d p d p T d T p T p + = + T d 0 d T p p T d p = 0 p δ =
d d d p p d p d p T d T p T p + = + p md = nt = T d p T d p = 0 p δ =
p T d p = p D p = D > 0 0 p δ = D e D p 4 4 = π
µ σ N µ σ µ σ f = e πσ p = e 4D 4πD D = σ
T d / n + n - nt md pmd nt + n n = + n n + n = m p md nt n n + n n! p md nt = nc + n = + + n! n n! n
n! p md nt n! n n! n n = nc + n = + + n + + n = n n + n = m p md nt = n + n!! n! n = n n! + m n! m! n
3 3 n n n ne n n π! log log! log π + + n n n n n m e n nt md p = π
D e D p 4 4 = π n m e n nt md p = π md = nt = T d D = n m n T d d m e nd e nt T d nt md p 4 4 = = π π
m p md nt = e n πn d m p md nt = e n πnd
3 m p md nt = e n πnd p n m md d md d
-l n l n v h l / l l τc = v h
-l A B l A 0 l n d n τc B n d l 0
3 -l A B l n τ c 0 n d l 0 l n d
4 n -l A n B l 0 n d l 0 l n d / dn d l
5 A B dn d l τ c -l l l dn τ c d l τ c D
6 + n D n D + n D n n n = D +
7 7 + = + n n D n n D n n D n = = +