1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
-module(no_1).
-compile(export_all).
?MODULE() ->
ok.
f1(X) ->
Ref = make_ref(),
receive
_ when [X] =:= Ref ->
ok
end.
f2(X, Y) ->
_Ref = make_ref(),
receive
_ when X =:= Y ->
ok
end.
f3(X) ->
Ref = make_ref(),
receive
_ when X =:= Ref ->
ok
end.
f4(X) ->
Ref = make_ref(),
receive
{X,_} when not X =:= Ref ->
ok
end.
f5(X) ->
Ref = make_ref(),
receive
{Y,_} when X =:= Y; Y =:= Ref ->
ok
end.
f6(X) ->
Ref = make_ref(),
receive
{Y,_} when Y =:= Ref; Ref =:= X ->
ok
end.
f7(X) ->
Ref = make_ref(),
receive
{Y,_} when Y =:= Ref; not (X =:= Ref) ->
ok
end.
f8(X) ->
Ref = make_ref(),
receive
{Y,_} when not (X =:= Ref); Y =:= Ref ->
ok
end.
f9(X) ->
Ref = make_ref(),
receive
{Y,_} when (not (X =:= Ref)) or (Y =:= Ref) ->
ok
end.
f10(X, Y) ->
Ref = make_ref(),
receive
{Z,_} when not (X =:= Y andalso Z =:= Ref) ->
ok
end.
f11(X, Y) ->
Ref = make_ref(),
receive
{Z,_} when not ((X =:= Y) and (Z =:= Ref)) ->
ok
end.
f12(X, Y) ->
Ref = make_ref(),
receive
{Z,_} when not ((Z =:= Ref) and (X =:= Y)) ->
ok
end.
f13() ->
Ref = make_ref(),
RefCopy = id(Ref),
receive
_ when hd([RefCopy]) =:= Ref ->
ok
end.
id(I) -> I.
|