Skip to content

Commit 8ded9fd

Browse files
Modify level2_ring.py
1 parent 9650fee commit 8ded9fd

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
from PyQt5.QtCore import QPointF
2+
from levels.base_level import BaseLevel
3+
4+
class Level2Ring(BaseLevel):
5+
def __init__(self, parent_selector):
6+
super().__init__("Level 2: Encrypted Fraud Network", parent_selector)
7+
8+
# Realistic scenario narration
9+
self.update_narration(
10+
"🕵️ Prover: These 8 nodes represent accounts in a suspected fraud ring.\n"
11+
"Each edge is a known interaction. Prove that directly connected accounts\n"
12+
"don’t share the same fraud classification — without revealing any labels."
13+
)
14+
15+
# Node layout (visually inspired by screenshot)
16+
positions = [
17+
QPointF(300, 400), # 0 - bottom center-left
18+
QPointF(150, 300), # 1
19+
QPointF(150, 200), # 2
20+
QPointF(300, 100), # 3 - top center-left
21+
QPointF(450, 100), # 4 - top center-right
22+
QPointF(600, 200), # 5
23+
QPointF(600, 300), # 6
24+
QPointF(450, 400) # 7 - bottom center-right
25+
]
26+
27+
# Edge list (dense fraud ring)
28+
edges = [
29+
(0, 1), (0, 7), (1, 2), (1, 7), (2, 3),
30+
(3, 4), (4, 5), (5, 6), (6, 7),
31+
(2, 5), (1, 4), (3, 6), (0, 5), (7, 2)
32+
]
33+
34+
self.create_graph(positions, edges)

0 commit comments

Comments
 (0)