From d8951be3c77c318a3cbe4714b00ea63d1c7846fb Mon Sep 17 00:00:00 2001 From: breandan Date: Sun, 14 Apr 2024 12:24:56 -0400 Subject: [PATCH] precompute state table --- galoisenne | 2 +- .../cstk/experiments/repair/PythonBarHillelRepair.kt | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/galoisenne b/galoisenne index 47d19fe..7e4ff07 160000 --- a/galoisenne +++ b/galoisenne @@ -1 +1 @@ -Subproject commit 47d19fe96821728f62529446be3123f715d62529 +Subproject commit 7e4ff078b179b154e193221b3873d5f635934214 diff --git a/src/main/kotlin/edu/mcgill/cstk/experiments/repair/PythonBarHillelRepair.kt b/src/main/kotlin/edu/mcgill/cstk/experiments/repair/PythonBarHillelRepair.kt index b0856f4..ecdd8df 100644 --- a/src/main/kotlin/edu/mcgill/cstk/experiments/repair/PythonBarHillelRepair.kt +++ b/src/main/kotlin/edu/mcgill/cstk/experiments/repair/PythonBarHillelRepair.kt @@ -24,7 +24,7 @@ fun main() { // MAX_UNIQUE = 1_000 TIMEOUT_MS = 30_000 MIN_TOKENS = 3 - MAX_TOKENS = 80 + MAX_TOKENS = 60 MAX_RADIUS = 3 CFG_THRESH = 10_000 evaluateBarHillelRepairOnStackOverflow() @@ -121,14 +121,14 @@ fun evaluateBarHillelRepairOnStackOverflow() { allRate.total++; levRates.getOrPut(levDist) { LBHMetrics() }.total++ println("Ground truth repair: $humanRepairANSI") + val pTree = measureTimedValue { intGram.toPTree(origCFG = s2pg) } + .also { println("Constructed PTree in ${it.duration.inWholeMilliseconds}ms") }.value + val langSize = pTree.totalTreesStr val clock = TimeSource.Monotonic.markNow() val totalSamples = AtomicInteger(0) var matchFound = false val timeout = (TIMEOUT_MS / 1000).seconds var elapsed = clock.elapsedNow().inWholeMilliseconds - val pTree = intGram.toPTree(origCFG = s2pg) - println("Constructed PTree in ${clock.elapsedNow().inWholeMilliseconds - elapsed}ms") - val langSize = pTree.totalTreesStr val results = ConcurrentRankedProbabilisticSet<Σᐩ>(MAX_UNIQUE) val sampler = if (intGram.size < CFG_THRESH) { @@ -223,7 +223,7 @@ fun Map.summarize() = data class LBHMetrics(var top1: Int = 0, var recall: Int = 0, var total: Int = 0, var error: Int = 0) { override fun toString() = "Top-1/rec/pos/total: $top1 / $recall / $total / ${total + error}, " + - "errors: $error, P@1: ${top1.toDouble() / (total + error)}" + "errors: $error, P@1: ${top1.toDouble() / (total + error)}, P@All: ${recall.toDouble() / (total + error)}" } val naturallySmallRepairs: Sequence<Π2A<Σᐩ>> by lazy {