#!/usr/bin/env python3 """Agent G (Theory Specialist), WP44 Phase 5 — builds literature_synthesis/agent_G/contributions.csv from the candidate landmark files of the theory and software_pl areas plus the specialist's audit verdicts (hand-coded below, judged from title/venue metadata and, where available, the abstract in _abstracts.jsonl; never from full text). Verdicts: in_scope_research — a research contribution inside the category's definition (taxonomy/ontology.yaml) in_scope_survey — survey/handbook/competition report inside the category textbook — textbook, book chapter or monograph (teaching material, not a research landmark) reprint_misdated — a classic work re-deposited (repository, arXiv, reprint volume) whose record date is not its original date dissertation — a doctoral/master thesis inside the category (selected through NCS36 normalisation of a small cell) metaheuristic — metaphor-based metaheuristic optimiser (inside the algorithms definition, contested genre) misclassified — outside the category and outside the theory/software scope (classifier error) duplicate — second record of a work already in the list id_resolves_to_other_work = yes when the OpenAlex id, resolved live on 2026-11-03, returns a different work (see verification.txt).""" import csv, json, os R = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) V = { # work_id: (verdict, contribution_type, description, bib_key or '', id_collision) # ---- theory: algorithms ---- "4311415873": ("in_scope_research", "method", "Kd-trees extended to Bregman divergences with a C++ nearest-neighbour implementation (WADS 2025); the record's citation counts belong to another work", "pham2025kdtree", "yes"), "2402846924": ("textbook", "survey", "Book chapter on particle swarm optimisation (2019); generic-title chapter carrying thousands of citations", "", "no"), "4294558607": ("in_scope_research", "engineering", "GNN-selected branching vertex inside branch-and-reduce for maximum independent set (SEA 2024); counts belong to another work", "langedal2024mis", "yes"), "4372046852": ("textbook", "survey", "Textbook chapter 'Introduction to Algorithms' (2023), no abstract", "", "no"), "4285092328": ("reprint_misdated", "theory", "Dijkstra's 1959 shortest-path note reprinted in the 2022 ACM Books volume", "", "no"), "3148190347": ("textbook", "survey", "Book chapter 'Introduction to Graph Theory' (2023), no abstract", "", "no"), "7128526706": ("metaheuristic", "method", "Glider snake optimiser, nature-inspired metaheuristic benchmarked on CEC functions (2026)", "", "no"), "2112641412": ("in_scope_survey", "survey", "Gallian's dynamic survey of graph labelling (2022 edition)", "", "no"), "3183881215": ("textbook", "survey", "Apress textbook chapter 'Introduction to Algorithms' (2021)", "", "no"), "2003494253": ("textbook", "survey", "CS2 textbook 'Algorithms + Data Structures = Programs' (2024)", "", "no"), "7125913058": ("in_scope_research", "method", "MIP model and evolutionary decoding for multi-resource flexible job-shop scheduling under pallet automation (2026)", "", "no"), "1491280261": ("reprint_misdated", "method", "Grammar-guided genetic programming (CFG-GP) thesis re-deposited in 2022", "", "no"), "3111526966": ("textbook", "survey", "CRC textbook chapter on algorithms (2020)", "", "no"), "3119051141": ("metaheuristic", "method", "Arithmetic Optimization Algorithm (2021), metaphor-based metaheuristic", "abualigah2021aoa", "no"), "4406080942": ("metaheuristic", "method", "Artificial lemming algorithm (2025), bionic metaheuristic", "", "no"), "2146101030": ("reprint_misdated", "theory", "Communication complexity of document exchange (SODA 2000) re-deposited with a 2026 date", "", "no"), "4405348595": ("textbook", "survey", "Book chapter 'Positive Definite Matrices' (2024); abstract field reads 'placeholder notes'", "", "no"), "7118096636": ("metaheuristic", "method", "Modified starfish optimisation algorithm applied to heart-disease data (2026), no abstract", "", "no"), "4233225156": ("textbook", "survey", "Springer undergraduate chapter 'Introduction to Algorithms' (2020)", "", "no"), "2891784792": ("reprint_misdated", "theory", "Online algorithms with machine-learned predictions (ski rental, scheduling); 2024 arXiv posting of a 2018 conference paper", "", "no"), "7155156112": ("metaheuristic", "method", "Gray langurs optimiser (2026), multi-group bio-inspired metaheuristic", "", "no"), "3139484821": ("metaheuristic", "method", "Aquila Optimizer (2021), metaphor-based metaheuristic, no abstract", "abualigah2021aquila", "no"), "2121903617": ("textbook", "survey", "CRC chapter 'Introduction to evolutionary algorithms' (2018 reprint)", "", "no"), "1486707681": ("reprint_misdated", "theory", "Sequence distance embeddings (doctoral thesis, Warwick) re-deposited with a 2026 date", "", "no"), "2207864362": ("dissertation", "theory", "Algebraically defined digraphs over finite fields (thesis, 2024)", "", "no"), # ---- theory: computational_complexity ---- "4254202520": ("reprint_misdated", "theory", "Turing's 1936 'On Computable Numbers' in a 2021 MIT Press anthology", "", "no"), "1638203394": ("textbook", "survey", "Li and Vitanyi, An Introduction to Kolmogorov Complexity (4th ed., 2019)", "li2019kolmogorov", "no"), "2979043732": ("dissertation", "theory", "ETH-tight algorithms for geometric network problems (thesis, TU/e 2019); abstract field is boilerplate", "", "no"), "2957144896": ("misclassified", "empirical", "UTAUT model of mobile-learning adoption (psychology)", "", "no"), "4241184911": ("reprint_misdated", "theory", "Wolfram's two-dimensional cellular automata chapter (2018 CRC reprint)", "", "no"), "4394806711": ("misclassified", "empirical", "PLS-SEM survey on AI, social media and student well-being", "", "no"), "4386113651": ("misclassified", "method", "Preprint: validation protocol for consciousness-theoretic claims about AI systems", "", "no"), "1513303009": ("reprint_misdated", "theory", "Wolfram's collected cellular-automata papers (CERN record)", "", "no"), "4406215947": ("misclassified", "empirical", "Digital transformation and SME innovation performance (systems theory)", "", "no"), "2905177801": ("misclassified", "method", "Optimal trees for prediction and prescription (MIT OR thesis, 2018)", "", "no"), "2955897898": ("misclassified", "survey", "Wireless communications above 100 GHz for 6G", "", "no"), "4377102915": ("misclassified", "survey", "Smart digital technologies in learning environments, 'complexity theory' lens", "", "no"), "3139085460": ("misclassified", "empirical", "Machine-learning education thesis (MIT, 2020)", "", "no"), "2808541536": ("dissertation", "theory", "Meet-continuity and locally compact sober dcpos (domain theory thesis, 2018)", "", "no"), "73572444": ("misclassified", "survey", "Complexity Theory and the Social Sciences (Routledge, 2022)", "", "no"), "7122741622": ("misclassified", "survey", "Digital fringe projection profilometry review (metrology)", "", "no"), "7133302269": ("misclassified", "empirical", "AI-assisted learning tools and learning outcomes (cognitive load theory)", "", "no"), "7160425037": ("in_scope_research", "theory", "SAT solved by restricted spiking neural P systems with temporal division rules (TCS 2026); no abstract", "", "no"), "4391177866": ("textbook", "survey", "Undergraduate chapter 'Computational Complexity' (2024)", "", "no"), "4396808240": ("textbook", "survey", "Undergraduate chapter 'Parameterized Complexity' (2024)", "", "no"), "3086066649": ("misclassified", "empirical", "Digital learning and university brand image (Pakistan)", "", "no"), "7127964361": ("misclassified", "empirical", "Knowledge-management capability and hotel innovation (PLS-SEM)", "", "no"), "3122335070": ("misclassified", "engineering", "Mobile learning system for CS education in Nigeria (thesis)", "", "no"), "2900179285": ("in_scope_research", "theory", "Non-elementary lower bound for Petri-net reachability (STOC 2019)", "czerwinski2019petri", "no"), "4408441779": ("misclassified", "empirical", "Data-driven decision-making and SME creativity (PLS-SEM)", "", "no"), # ---- software_pl: software_engineering ---- "2964015378": ("in_scope_research", "method", "APISS: functionality-equivalent API retrieval with LLM embeddings to migrate vulnerability PoCs (ECOOP 2025); counts belong to another work", "chen2025apiss", "yes"), "4293846201": ("in_scope_research", "engineering", "Confiance.ai methodological framework for assessing ML model robustness (SAIA 2024); counts belong to another work", "awadid2025robust", "yes"), "2095152777": ("reprint_misdated", "empirical", "Royce's 1970 'Managing the Development of Large Software Systems' in a 2021 anthology", "", "no"), "2911537985": ("dissertation", "empirical", "Microservices vs service-oriented architecture (master thesis, 2018), no abstract", "", "no"), "1486172410": ("textbook", "survey", "Cambridge textbook 'Introduction to Software Testing' (2021 chapter)", "", "no"), "7151510318": ("dissertation", "method", "Unsupervised translation of programming languages (doctoral thesis, French abstract, 2022)", "", "no"), "4391974543": ("in_scope_survey", "survey", "Survey of 102 studies using LLMs for software testing (TSE 2024)", "wang2024llmtesting", "no"), "3185223169": ("dissertation", "method", "Effort-estimation model for agile development (thesis, 2020), no abstract", "", "no"), "2171139698": ("dissertation", "method", "Evolutionary test-data generation for mutation testing (thesis, Kent); abstract field is a dedication", "", "no"), "7131867455": ("in_scope_research", "empirical", "Three randomised field experiments on AI coding assistants and developer output (Management Science 2026)", "cui2026genaiwork", "no"), "4399452770": ("in_scope_survey", "survey", "History of software-engineering degree programmes in Brazil (Computacao Brasil 2018)", "", "no"), "4408219312": ("dissertation", "method", "Type-hint fuzzing of Python programs (thesis, 2024)", "", "no"), "4402442491": ("dissertation", "method", "Domain-oriented specification method (thesis, 2024)", "", "no"), "4403110951": ("dissertation", "method", "Semantics-aware testing of human-interactive systems (thesis, 2024)", "", "no"), "3008797115": ("reprint_misdated", "method", "Metamorphic testing technical report (1998) posted to arXiv in 2020", "", "no"), "3177813494": ("in_scope_research", "empirical", "Correctness-energy trade-offs of open code LLMs on Python bug fixing (ESEM 2026); record title, year and counts belong to other works", "naqvi2026bigger", "yes"), "7110046239": ("in_scope_research", "empirical", "Closed-world CWE classification by open LLMs on Big-Vul (ICPEC 2025); live citation count differs from the corpus window", "gasparlopes2025vuln", "no"), "4391677389": ("dissertation", "method", "Perspective-based specification of ML-enabled systems (thesis, 2023); abstract field is an acknowledgement", "", "no"), "7124592699": ("in_scope_research", "method", "Multi-scale temporal deep model for just-in-time defect prediction (2026)", "", "no"), "3007157104": ("in_scope_survey", "survey", "Machine-learning testing survey of 144 papers (TSE 2020/2022)", "zhang2020mltesting", "no"), "58732440": ("reprint_misdated", "empirical", "Novice compilation behaviour in BlueJ (doctoral thesis, re-deposited 2021)", "", "no"), "2725449579": ("in_scope_survey", "survey", "Mutation testing advances: analysis and survey (2019), no abstract", "papadakis2019mutation", "no"), "2962772482": ("misclassified", "survey", "Survey of methods for explaining black-box models (XAI, 2019)", "", "no"), "4293212596": ("in_scope_research", "engineering", "The Astropy Project: sustaining a community open-source scientific package (v5.0, 2022)", "", "no"), "4381982883": ("misclassified", "empirical", "ChatGPT for education and research, with coding experiments (2023)", "", "no"), # ---- software_pl: programming_languages ---- "2114444139": ("misclassified", "empirical", "Information-systems curriculum change (thesis)", "", "no"), "1844775953": ("reprint_misdated", "theory", "Metric domains for completeness (doctoral thesis, Warwick) re-deposited with a 2026 date", "", "no"), "4396242417": ("in_scope_research", "method", "LLift: LLM-assisted static analysis finding use-before-initialisation bugs in the Linux kernel (OOPSLA 2024)", "li2024llift", "no"), "2327217190": ("reprint_misdated", "theory", "Separation logic for programs in virtual memory (seL4-lineage thesis, re-deposited 2022)", "", "no"), "2491926874": ("reprint_misdated", "theory", "Formal memory models for verifying C systems code (L4 lineage thesis, re-deposited 2022)", "", "no"), "4205342885": ("misclassified", "survey", "Society 5.0 / Industry 5.0 and future universities", "", "no"), "2189687801": ("dissertation", "method", "Program synthesis with lexicase selection (thesis, 2021); the abstract field holds a different thesis (moose ecology)", "", "no"), "2400988715": ("reprint_misdated", "theory", "Functional stable model semantics and ASP modulo theories (2026 arXiv posting of an earlier paper)", "", "no"), "2796251079": ("textbook", "survey", "Springer chapter 'A Concise Introduction to Logic' (2018)", "", "no"), "159920301": ("reprint_misdated", "theory", "On intuitionistic linear logic (doctoral thesis, re-deposited 2021)", "", "no"), "4389109635": ("dissertation", "theory", "PBPO+ unifying algebraic graph transformation (thesis, 2023)", "", "no"), "630549275": ("reprint_misdated", "theory", "Clustered multikernel for verified multiprocessor kernels (thesis, re-deposited 2022)", "", "no"), "4403223258": ("in_scope_research", "method", "WhiteFox: white-box compiler fuzzing guided by LLMs reading optimisation source (OOPSLA 2024)", "yang2024whitefox", "no"), "4313480275": ("textbook", "survey", "Harel's 'Algorithmics: The Spirit of Computing' chapter (2023)", "", "no"), "2790202156": ("in_scope_research", "method", "ZEUS: abstract interpretation and CHC-based safety checking of smart contracts (NDSS 2018)", "kalra2018zeus", "no"), "3207822760": ("dissertation", "empirical", "Cognitive predictors of programming skill, EEG study (thesis, 2021)", "", "no"), "4297611890": ("textbook", "survey", "Avigad's mathematical logic textbook chapter (2022)", "", "no"), "2915211782": ("textbook", "survey", "Cambridge Handbook chapter on novice programmers (2019)", "", "no"), "4381516741": ("textbook", "survey", "Springer chapter 'The Python Programming Language' (2023)", "", "no"), "3115704172": ("dissertation", "engineering", "Lineage-driven fault injection for Akka actor programs (thesis, 2019)", "", "no"), "3146286581": ("dissertation", "method", "Probabilistic grammatical evolution (2021)", "", "no"), "7134194765": ("misclassified", "method", "Debris-flow hazard assessment with AHP-CRITIC and SHAP", "", "no"), "2797025890": ("misclassified", "empirical", "Open educational practices (thesis)", "", "no"), "4396905794": ("dissertation", "method", "Predicting TypeScript annotations with fine-tuned code models (thesis, 2024)", "", "no"), "4410362977": ("misclassified", "theory", "Calabi-Yau manifolds in black-hole scattering (Nature 2025)", "", "no"), # ---- software_pl: compilers ---- "3122286897": ("in_scope_research", "engineering", "MLIR: reusable multi-level compiler infrastructure (CGO 2021)", "lattner2021mlir", "no"), "4407983386": ("misclassified", "method", "Photovoltaic power forecasting with TimesNet-BiLSTM", "", "no"), "4399087350": ("misclassified", "survey", "E-learning and business education in the GCC", "", "no"), "4398768423": ("in_scope_research", "benchmark", "LLM4VV: LLM-generated validation test suites for OpenACC compilers (FGCS 2024), no abstract", "munley2024llm4vv", "no"), "2188794726": ("textbook", "survey", "Springer chapter 'Dynamic Dataflow Graphs' (2018)", "", "no"), "4406882143": ("misclassified", "survey", "Just-in-time adaptive interventions in mental health (systematic review)", "", "no"), "2884622219": ("misclassified", "survey", "Raw NMR data availability in natural-product research", "", "no"), "3188948186": ("misclassified", "engineering", "Fuzzy PID speed control of a DC motor (arXiv)", "", "no"), "2962724414": ("in_scope_survey", "survey", "Machine learning in compiler optimisation (Proc. IEEE 2018)", "wang2018mlcompiler", "no"), "4408711372": ("misclassified", "method", "Polyhedral approximation for electricity-water nexus dispatch", "", "no"), "4392397123": ("misclassified", "empirical", "Educators' perceptions of AI in higher education", "", "no"), "2783614532": ("in_scope_survey", "survey", "Survey on compiler autotuning with machine learning (CSUR 2018)", "ashouri2018autotuning", "no"), "2206959660": ("dissertation", "method", "Compiler optimisation selection by program characterisation and ML (thesis, 2024)", "", "no"), "2249134499": ("dissertation", "method", "Improving compiler optimisations using ML (thesis, 2024)", "", "no"), "3139485201": ("dissertation", "method", "Towards automated construction of compiler optimisations (MIT thesis, 2020)", "", "no"), "3214427835": ("dissertation", "method", "Sparse tensor algebra compilation (MIT thesis, 2020)", "", "no"), "3023977240": ("dissertation", "method", "From constraint programming to heterogeneous parallelism (thesis, 2020)", "", "no"), "3046781014": ("in_scope_research", "engineering", "ExaStencils: multigrid solver generation from a layered DSL (2020)", "", "no"), "7127344046": ("misclassified", "empirical", "AI policy readiness in Omani higher education", "", "no"), "3132279601": ("misclassified", "empirical", "COVID-19 and higher education in the GCC", "", "no"), "3103225940": ("dissertation", "engineering", "LLVM backend for the OpenModelica compiler (thesis, 2019)", "", "no"), "4313894866": ("misclassified", "survey", "The science of literature reviews", "", "no"), "4407942537": ("in_scope_research", "engineering", "LLM Compiler: foundation models pre-trained on LLVM-IR and assembly for optimisation tasks (CC 2025)", "cummins2025llmcompiler", "no"), "2787911489": ("in_scope_research", "engineering", "Automated code generation for chemistry kernels in OpenFOAM (2018), no abstract", "", "no"), "2949967139": ("in_scope_research", "engineering", "Tiramisu polyhedral compiler with a scheduling language (CGO 2019)", "baghdadi2019tiramisu", "no"), # ---- software_pl: formal_verification ---- "4385245566": ("in_scope_research", "engineering", "MizAR 60 for Mizar 50: learning-guided ATP proving about 60% of Mizar theorems (ITP 2023); record title and counts belong to another work", "jakubuv2023mizar", "yes"), "1498342204": ("reprint_misdated", "theory", "Lynch and Tuttle's introduction to I/O automata (1989) republished in 2026", "lynch2026ioautomata", "no"), "3117137355": ("reprint_misdated", "engineering", "egg equality saturation: 2026 CACM research highlight of the POPL 2021 paper", "willsey2026eggcacm", "no"), "1481397690": ("textbook", "survey", "Handbook of Model Checking chapter on SMT (2018), no abstract", "", "no"), "2254118105": ("reprint_misdated", "method", "QBF solving by implicit hitting sets / clause selection (2026 arXiv posting of a 2015 paper)", "", "no"), "4206807714": ("textbook", "survey", "Handbook of Satisfiability, 2nd edition (2021)", "biere2021handbook", "no"), "2540354435": ("reprint_misdated", "theory", "Weighted rules under the stable model semantics (2026 arXiv posting of an earlier paper)", "", "no"), "2921681895": ("dissertation", "method", "Parameter synthesis in parametric Markov models (thesis, RWTH 2020)", "", "no"), "4225922019": ("in_scope_research", "engineering", "cvc5 SMT solver system description (TACAS 2022)", "barbosa2022cvc5", "no"), "4318573502": ("dissertation", "theory", "Semantically informed structural proof theory (thesis, 2022)", "", "no"), "2154148696": ("textbook", "survey", "Supervisory control of timed discrete-event systems (chapter, 2018)", "", "no"), "4297781990": ("in_scope_research", "method", "Answer-set programming for runtime monitoring and fault explanation of automated driving (DX 2024); counts belong to another work", "klampfl2024asp", "yes"), "2789444712": ("misclassified", "survey", "Industry 4.0 state of the art (production research)", "", "no"), "1586677474": ("duplicate", "survey", "Second record of the Handbook of Satisfiability (2021)", "", "no"), "2486519520": ("reprint_misdated", "method", "Machine learning for heuristic selection in automated theorem proving (thesis, re-deposited 2021)", "", "no"), "4289665848": ("in_scope_research", "theory", "Reward interfaces: quantitative interface automata with best-effort implementations (CSL 2026)", "", "no"), "149631060": ("reprint_misdated", "survey", "Decidability issues for Petri nets (1994 survey posted to arXiv in 2024)", "", "no"), "2890660842": ("in_scope_research", "method", "Symbolic interval propagation for formal safety analysis of neural networks (2018 preprint)", "", "no"), "1932627192": ("reprint_misdated", "method", "QMC model checker for quantum protocols (doctoral thesis re-deposited with a 2026 date)", "", "no"), "4393942723": ("in_scope_survey", "benchmark", "SV-COMP 2024 competition report: 76 tools, 30,300 C tasks (2024)", "beyer2024svcomp", "no"), "2957311447": ("in_scope_research", "engineering", "Marabou SMT-based neural-network verifier (CAV 2019)", "katz2019marabou", "no"), "2905489900": ("dissertation", "method", "Machine learning for SAT solver heuristics (thesis, Waterloo 2018)", "", "no"), "2900153411": ("in_scope_research", "method", "DeepPoly abstract domain for certifying neural networks (POPL 2019)", "singh2019deeppoly", "no"), "6944541633": ("dissertation", "method", "Verification of multi-objective Markov models (thesis, RWTH 2023)", "", "no"), "3016155638": ("in_scope_research", "method", "VerX: automated verification of temporal properties of Ethereum contracts (S&P 2020)", "permenev2020verx", "no"), } abst = {} for ar in ("theory", "software_pl"): for line in open(f"{R}/literature_synthesis/landmarks/{ar}_abstracts.jsonl"): r = json.loads(line); abst[str(r["work_id"])] = bool((r.get("abstract") or "").strip()) rows = [] for ar in ("theory", "software_pl"): for r in csv.DictReader(open(f"{R}/literature_synthesis/landmarks/{ar}_landmarks.csv")): w = r["work_id"]; v = V.get(w) if v is None: raise SystemExit(f"no verdict for {w} {r['title'][:60]}") verdict, ctype, desc, key, coll = v rows.append({"openalex_id": f"W{w}", "contribution_type": ctype, "description": desc, "judged_from": "abstract" if abst.get(w) else "metadata_only", "area": ar, "primary_category": r["primary_category"], "year": r["year"], "period": r["period"], "type": r["type"], "doi": r["doi"], "c36": r["c36"], "ncs36": r["ncs36"], "verdict": verdict, "id_resolves_to_other_work": coll, "bib_key": key, "title": r["title"]}) with open(f"{R}/literature_synthesis/agent_G/contributions.csv", "w", newline="") as fh: w = csv.DictWriter(fh, fieldnames=list(rows[0].keys())); w.writeheader(); w.writerows(rows) from collections import Counter print(len(rows), Counter(r["verdict"] for r in rows), Counter(r["judged_from"] for r in rows))