mirror of
https://github.com/data61/MP-SPDZ.git
synced 2026-01-08 21:18:03 -05:00
47 lines
1.3 KiB
Python
Executable File
47 lines
1.3 KiB
Python
Executable File
#!/usr/bin/python
|
|
|
|
import glob, os, sys, csv
|
|
from collections import defaultdict
|
|
|
|
sys.path.insert(0, os.path.abspath('..'))
|
|
|
|
from Compiler.compilerLib import Compiler
|
|
from Compiler.papers import *
|
|
|
|
def protocols():
|
|
exclude = 'no', 'bmr-program',
|
|
for sub in '', 'BMR/':
|
|
for filename in glob.glob('../Machines/%s*-party.cpp' % sub):
|
|
name = os.path.basename(filename)[:-10]
|
|
if not (name in exclude or name.endswith('-prep')):
|
|
yield name
|
|
|
|
out = csv.writer(open('protocol-reading.csv', 'w'))
|
|
|
|
protocol_links = set()
|
|
|
|
for protocol in sorted(protocols()):
|
|
protocol = Compiler.short_protocol_name(protocol)
|
|
assert os.path.exists('../Scripts/%s.sh' % protocol)
|
|
reading = reading_for_protocol(protocol)
|
|
assert reading
|
|
out.writerow([protocol, reading])
|
|
protocol_links.update(reading.split(', '))
|
|
|
|
refs = defaultdict(set)
|
|
|
|
for filename in glob.glob('../Compiler/*.py'):
|
|
for line in open(filename):
|
|
m = re.search(r"reading.'([^']*)', '([^']*)'", line)
|
|
if m:
|
|
refs[m.group(2)].add(m.group(1))
|
|
|
|
out = csv.writer(open('other-reading.csv', 'w'))
|
|
|
|
for ref, keywords in sorted(refs.items(), key=lambda x: list(sorted(
|
|
re.sub('\(', '', xx).lower() for xx in x[1]))):
|
|
out.writerow([', '.join(sorted(keywords, key=lambda x: x.lower())),
|
|
papers[ref]])
|
|
|
|
del out
|