(* Content-type: application/mathematica *) (*** Wolfram Notebook File ***) (* http://www.wolfram.com/nb *) (* CreatedBy='Mathematica 7.0' *) (*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 145, 7] NotebookDataLength[ 32880, 863] NotebookOptionsPosition[ 30776, 797] NotebookOutlinePosition[ 31121, 812] CellTagsIndexPosition[ 31078, 809] WindowFrame->Normal*) (* Beginning of Notebook Content *) Notebook[{ Cell[BoxData[ RowBox[{ RowBox[{"BlankSpaces", "[", "n_", "]"}], ":=", RowBox[{"Table", "[", RowBox[{ RowBox[{"{", "\"\<\>\"", "}"}], ",", RowBox[{"{", "n", "}"}]}], "]"}]}]], "Input", CellChangeTimes->{{3.455152518703125*^9, 3.455152553875*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"(*", " ", RowBox[{"Instance", " ", ":=", " ", RowBox[{"{", RowBox[{"name", ",", " ", "result", ",", " ", "time"}], "}"}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{"Benchmark", " ", ":=", " ", RowBox[{"[", "Instance", "]"}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{"BenchList", " ", ":=", " ", RowBox[{"[", "Benchmark", "]"}]}], " ", "*)"}]}]], "Input", CellChangeTimes->{{3.455146356125*^9, 3.45514640884375*^9}, { 3.4551470449375*^9, 3.455147047328125*^9}, 3.455150327140625*^9}], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"InstanceName", "[", "b_", "]"}], ":=", RowBox[{"Extract", "[", RowBox[{"b", ",", "1"}], "]"}]}], ";", " ", RowBox[{ RowBox[{"InstanceResult", "[", "b_", "]"}], ":=", RowBox[{"Extract", "[", RowBox[{"b", ",", "2"}], "]"}]}], ";", " ", RowBox[{ RowBox[{"InstanceTime", "[", "b_", "]"}], ":=", RowBox[{"Extract", "[", RowBox[{"b", ",", "3"}], "]"}]}]}]], "Input", CellChangeTimes->{{3.455146370109375*^9, 3.455146413046875*^9}, { 3.455146578625*^9, 3.455146615234375*^9}, {3.45514670265625*^9, 3.45514670815625*^9}, {3.4551470495*^9, 3.455147050375*^9}}], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"ReadBenchmark", "[", "benchPath_", "]"}], ":=", RowBox[{"First", "@", RowBox[{"ReadList", "[", "benchPath", "]"}]}]}], ";"}]], "Input", CellChangeTimes->{{3.45514610396875*^9, 3.45514612384375*^9}, { 3.455146415328125*^9, 3.455146415546875*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"ReadBenchList", "[", "paths_", "]"}], ":=", RowBox[{"ReadBenchmark", "/@", "paths"}]}]], "Input", CellChangeTimes->{{3.45514603290625*^9, 3.4551460349375*^9}, { 3.455146092109375*^9, 3.4551461376875*^9}, 3.455146418171875*^9}], Cell[BoxData[ RowBox[{"(*", " ", RowBox[{"for", " ", "creating", " ", "the", " ", "main", " ", "table"}], " ", "*)"}]], "Input", CellChangeTimes->{{3.455149536390625*^9, 3.45514955625*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"EveryKth", "[", RowBox[{"L_", ",", "k_"}], "]"}], ":=", RowBox[{"Table", "[", RowBox[{ RowBox[{"Take", "[", RowBox[{"L", ",", RowBox[{"{", RowBox[{"i", ",", RowBox[{"Length", "[", "L", "]"}], ",", "k"}], "}"}]}], "]"}], ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", "k"}], "}"}]}], "]"}]}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"GetSatResult", "[", "results_", "]"}], ":=", RowBox[{"Which", "[", RowBox[{ RowBox[{"MemberQ", "[", RowBox[{"results", ",", "SAT"}], "]"}], ",", "SAT", ",", RowBox[{"MemberQ", "[", RowBox[{"results", ",", "UNS"}], "]"}], ",", "UNS", ",", "True", ",", "UNK"}], "]"}]}]], "Input", CellChangeTimes->{{3.4551349059375*^9, 3.455134928765625*^9}, { 3.455134961796875*^9, 3.455134962671875*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"CombineInstanceResults", "[", "L_", "]"}], ":=", RowBox[{"Flatten", "@", RowBox[{"{", RowBox[{ RowBox[{"First", "[", RowBox[{"L", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}], ",", RowBox[{"GetSatResult", "[", RowBox[{"L", "[", RowBox[{"[", "2", "]"}], "]"}], "]"}], ",", RowBox[{"L", "[", RowBox[{"[", "3", "]"}], "]"}]}], "}"}]}]}]], "Input", CellChangeTimes->{{3.455150367984375*^9, 3.455150385328125*^9}, { 3.455150445859375*^9, 3.455150461984375*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"MakeCombinedBenchmarkTable", "[", RowBox[{"benchList_", ",", "solvers_"}], "]"}], ":=", "\[IndentingNewLine]", RowBox[{"TableForm", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"\"\\"", ",", "\"\\""}], "}"}], "~", "Join", "~", "solvers"}], "}"}], "~", "Join", "~", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"CombineInstanceResults", "[", RowBox[{"EveryKth", "[", RowBox[{"#", ",", "3"}], "]"}], "]"}], "&"}], "/@", RowBox[{"Apply", "[", RowBox[{"Join", ",", RowBox[{"Append", "[", RowBox[{"benchList", ",", "2"}], "]"}]}], "]"}]}], ")"}]}], "]"}]}]], "Input", CellChangeTimes->{{3.455131406078125*^9, 3.455131440546875*^9}, { 3.45513147378125*^9, 3.45513148003125*^9}, {3.455131576453125*^9, 3.455131621234375*^9}, {3.45513167684375*^9, 3.455131804375*^9}, { 3.455132083328125*^9, 3.4551320935625*^9}, {3.4551321265*^9, 3.455132135921875*^9}, 3.45513229565625*^9, {3.455132696890625*^9, 3.45513270034375*^9}, 3.455134132765625*^9, 3.455134307421875*^9, { 3.455134340171875*^9, 3.455134362984375*^9}, {3.455134517609375*^9, 3.455134518828125*^9}, {3.455134834515625*^9, 3.455134838828125*^9}, { 3.455146167578125*^9, 3.45514627734375*^9}, 3.455148063859375*^9, { 3.45515034978125*^9, 3.45515035284375*^9}, 3.455150456078125*^9, { 3.455150557609375*^9, 3.455150568265625*^9}, {3.4551506115625*^9, 3.45515067275*^9}}], Cell[BoxData[ RowBox[{"(*", " ", RowBox[{"for", " ", "creating", " ", "the", " ", "summary"}], " ", "*)"}]], "Input", CellChangeTimes->{{3.455149561328125*^9, 3.455149569140625*^9}, 3.4551497633125*^9}], Cell[BoxData[ RowBox[{ RowBox[{"BenchListLength", "[", "benchlist_", "]"}], ":=", RowBox[{"Length", "[", RowBox[{"First", "@", "benchlist"}], "]"}]}]], "Input", CellChangeTimes->{{3.4561821124466248`*^9, 3.4561821223997498`*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"BenchListSolvedSATUNSAT", "[", RowBox[{"benchList_", ",", "timeout_"}], "]"}], ":=", RowBox[{"Total", "/@", RowBox[{"Map", "[", RowBox[{ RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"InstanceTime", "[", "#", "]"}], "<", "timeout"}], ",", RowBox[{"InstanceResult", "[", "#", "]"}], ",", "0"}], "]"}], "&"}], ",", " ", "benchList", ",", RowBox[{"{", "2", "}"}]}], "]"}]}]}]], "Input", CellChangeTimes->{{3.45514700225*^9, 3.455147073125*^9}, { 3.455147124953125*^9, 3.45514717159375*^9}, {3.4551472269375*^9, 3.4551472506875*^9}, {3.455147373*^9, 3.455147396875*^9}, 3.455147659578125*^9, {3.455147693484375*^9, 3.4551476945625*^9}, { 3.45514793146875*^9, 3.455147958328125*^9}, {3.455148009859375*^9, 3.455148017890625*^9}, {3.455148078625*^9, 3.455148123765625*^9}, { 3.4551482050625*^9, 3.455148206265625*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"BenchListSolved", "[", RowBox[{"benchList_", ",", "timeout_"}], "]"}], ":=", RowBox[{ RowBox[{"BenchListSolvedSATUNSAT", "[", RowBox[{"benchList", ",", "timeout"}], "]"}], "/.", RowBox[{"{", RowBox[{ RowBox[{"SAT", "\[Rule]", "1"}], ",", RowBox[{"UNS", "\[Rule]", "1"}]}], "}"}]}]}]], "Input", CellChangeTimes->{{3.45514769675*^9, 3.455147714328125*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"BenchListAvgTime", "[", RowBox[{"benchList_", ",", "timeout_"}], "]"}], ":=", RowBox[{"Mean", "/@", RowBox[{"Map", "[", RowBox[{ RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"InstanceTime", "[", "#", "]"}], "<", "timeout"}], ",", RowBox[{"InstanceTime", "[", "#", "]"}], ",", "timeout"}], "]"}], "&"}], ",", "benchList", ",", RowBox[{"{", "2", "}"}]}], "]"}]}]}]], "Input", CellChangeTimes->{{3.455147539109375*^9, 3.455147574171875*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"BenchListAvgSolvedTime", "[", RowBox[{"benchList_", ",", "timeout_"}], "]"}], ":=", RowBox[{"Mean", "/@", RowBox[{"Map", "[", RowBox[{ RowBox[{ RowBox[{"If", "[", RowBox[{ RowBox[{ RowBox[{"InstanceTime", "[", "#", "]"}], "<", "timeout"}], ",", RowBox[{"InstanceTime", "[", "#", "]"}], ",", "0"}], "]"}], "&"}], ",", "benchList", ",", RowBox[{"{", "2", "}"}]}], "]"}]}]}]], "Input", CellChangeTimes->{{3.45514744871875*^9, 3.455147504296875*^9}, { 3.4551475778125*^9, 3.455147578203125*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"BenchListSummary", "[", RowBox[{"benchList_", ",", "timeout_"}], "]"}], ":=", "\[IndentingNewLine]", RowBox[{"{", RowBox[{ RowBox[{"BlankSpaces", "[", "3", "]"}], ",", RowBox[{ RowBox[{"ToString", "[", RowBox[{"timeout", "/", "60"}], "]"}], "<>", "\"\< minute cutoff\>\""}], ",", "\[IndentingNewLine]", RowBox[{"Flatten", "[", RowBox[{"{", RowBox[{"\"\\"", ",", " ", RowBox[{"BenchListSolved", "[", RowBox[{"benchList", ",", "timeout"}], "]"}]}], "}"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"Flatten", "[", RowBox[{"{", RowBox[{"\"\\"", ",", " ", RowBox[{"BenchListSolvedSATUNSAT", "[", RowBox[{"benchList", ",", "timeout"}], "]"}]}], "}"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"Flatten", "[", RowBox[{"{", RowBox[{"\"\\"", ",", " ", RowBox[{"BenchListAvgSolvedTime", "[", RowBox[{"benchList", ",", "timeout"}], "]"}]}], "}"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"Flatten", "[", RowBox[{"{", RowBox[{"\"\\"", ",", " ", RowBox[{"BenchListAvgTime", "[", RowBox[{"benchList", ",", "timeout"}], "]"}]}], "}"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"Flatten", "[", RowBox[{"{", RowBox[{"\"\\"", ",", " ", RowBox[{ RowBox[{"BenchListLength", "[", "benchList", "]"}], "*", RowBox[{"BenchListAvgTime", "[", RowBox[{"benchList", ",", "timeout"}], "]"}]}]}], "}"}], "]"}]}], "}"}]}]], "Input", CellChangeTimes->{{3.455148296421875*^9, 3.455148561171875*^9}, { 3.4551486183125*^9, 3.455148620421875*^9}, {3.45514873465625*^9, 3.455148759375*^9}, {3.4551489405*^9, 3.45514894134375*^9}, { 3.45514897196875*^9, 3.4551489755*^9}, {3.455149102375*^9, 3.455149104515625*^9}, {3.45515322196875*^9, 3.455153226515625*^9}, 3.4561825832747498`*^9}], Cell[BoxData[ RowBox[{ RowBox[{"JoinList", "[", "L_", "]"}], ":=", RowBox[{"Fold", "[", RowBox[{"Join", ",", RowBox[{"First", "[", "L", "]"}], ",", RowBox[{"Rest", "[", "L", "]"}]}], "]"}]}]], "Input", CellChangeTimes->{{3.45514881453125*^9, 3.4551488328125*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"MakeCombinedSummaryTable", "[", RowBox[{"benchList_", ",", "timeouts_", ",", "solvers_"}], "]"}], ":=", "\[IndentingNewLine]", RowBox[{"TableForm", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"{", "\"\\"", "}"}], "~", "Join", "~", "solvers"}], "}"}], "~", "Join", "~", RowBox[{"JoinList", "[", RowBox[{ RowBox[{ RowBox[{"BenchListSummary", "[", RowBox[{"benchList", ",", "#"}], "]"}], "&"}], "/@", "timeouts"}], "]"}]}], "]"}]}]], "Input", CellChangeTimes->{{3.4551488386875*^9, 3.45514889340625*^9}, { 3.455149116109375*^9, 3.45514921028125*^9}, {3.45514925440625*^9, 3.455149334765625*^9}, {3.455149365546875*^9, 3.455149433734375*^9}, { 3.45515049803125*^9, 3.45515050003125*^9}, {3.45515070578125*^9, 3.45515073634375*^9}, 3.455152231359375*^9, {3.455161658734375*^9, 3.455161661515625*^9}}], Cell[BoxData[ RowBox[{"(*", " ", RowBox[{"for", " ", "creating", " ", "the", " ", "plot"}], " ", "*)"}]], "Input", CellChangeTimes->{{3.455149670453125*^9, 3.45514968*^9}}], Cell[BoxData[ RowBox[{"Needs", "[", "\"\\"", "]"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"ClipTime", "[", RowBox[{"L_", ",", "timeout_"}], "]"}], ":=", RowBox[{"Select", "[", RowBox[{ RowBox[{"Sort", "[", "L", "]"}], ",", RowBox[{ RowBox[{"#", "<", "timeout"}], "&"}]}], "]"}]}]], "Input", CellChangeTimes->{{3.4551468121875*^9, 3.455146819015625*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"BenchListTimes", "[", RowBox[{"benchList_", ",", "timeout_"}], "]"}], ":=", RowBox[{ RowBox[{ RowBox[{"ClipTime", "[", RowBox[{"#", ",", "timeout"}], "]"}], "&"}], "/@", RowBox[{"Map", "[", RowBox[{ RowBox[{ RowBox[{"InstanceTime", "[", "#1", "]"}], "&"}], ",", "benchList", ",", RowBox[{"{", "2", "}"}]}], "]"}]}]}]], "Input", CellChangeTimes->{{3.4551464625625*^9, 3.45514647059375*^9}, { 3.45514673225*^9, 3.455146755828125*^9}, {3.45514781434375*^9, 3.45514789115625*^9}, {3.45514814571875*^9, 3.455148152734375*^9}, { 3.45514977953125*^9, 3.455149810046875*^9}, {3.45515960221875*^9, 3.45515960596875*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"MakeCombinedPlot", "[", RowBox[{"benchList_", ",", "timeout_", ",", "title_", ",", "solvers_"}], "]"}], ":=", RowBox[{"Rasterize", "[", RowBox[{ RowBox[{"ListPlot", "[", RowBox[{ RowBox[{"BenchListTimes", "[", RowBox[{"benchList", ",", "timeout"}], "]"}], ",", RowBox[{"PlotRange", "\[Rule]", "All"}], ",", RowBox[{"Frame", "\[Rule]", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"True", ",", "False"}], "}"}], ",", RowBox[{"{", RowBox[{"True", ",", "False"}], "}"}]}], "}"}]}], ",", RowBox[{"FrameLabel", "\[Rule]", RowBox[{"{", RowBox[{ "\"\\"", ",", "\"\\""}], "}"}]}], ",", RowBox[{"PlotLabel", "\[Rule]", "title"}], ",", RowBox[{"PlotLegend", "\[Rule]", "solvers"}], ",", RowBox[{"LegendShadow", "\[Rule]", "None"}], ",", RowBox[{"LegendPosition", "\[Rule]", RowBox[{"{", RowBox[{ RowBox[{"-", ".8"}], ",", RowBox[{"+", ".25"}]}], "}"}]}], ",", RowBox[{"LegendTextSpace", "\[Rule]", "5"}], ",", " ", RowBox[{"LegendSize", "\[Rule]", "0.35"}], ",", RowBox[{"Joined", "\[Rule]", "True"}], ",", RowBox[{"PlotMarkers", "\[Rule]", RowBox[{"{", RowBox[{"Automatic", ",", "8"}], "}"}]}]}], "]"}], ",", RowBox[{"ImageSize", "\[Rule]", "640"}]}], "]"}]}]], "Input", CellChangeTimes->{{3.455085400890625*^9, 3.455085413375*^9}, { 3.4550854525625*^9, 3.4550854528125*^9}, {3.455085668171875*^9, 3.455085668515625*^9}, {3.45508705265625*^9, 3.45508709071875*^9}, { 3.45508719071875*^9, 3.4550871910625*^9}, {3.4550872910625*^9, 3.455087299140625*^9}, {3.455087408953125*^9, 3.455087409296875*^9}, { 3.455087480484375*^9, 3.455087495140625*^9}, {3.455087701125*^9, 3.4550877809375*^9}, {3.455087850421875*^9, 3.45508785059375*^9}, { 3.4550879290625*^9, 3.455087991*^9}, {3.4550880408125*^9, 3.4550880416875*^9}, {3.455088182546875*^9, 3.45508823709375*^9}, { 3.455088591328125*^9, 3.45508862384375*^9}, {3.455088657890625*^9, 3.4550886689375*^9}, {3.455088702515625*^9, 3.455088725921875*^9}, { 3.455088777609375*^9, 3.455088789328125*^9}, {3.455088864375*^9, 3.45508890109375*^9}, {3.45508895125*^9, 3.45508896415625*^9}, { 3.45508907103125*^9, 3.455089226*^9}, {3.455089301078125*^9, 3.45508930484375*^9}, {3.45508933721875*^9, 3.455089337609375*^9}, 3.455129973515625*^9, {3.455130633796875*^9, 3.455130660953125*^9}, { 3.455130707484375*^9, 3.455130708078125*^9}, {3.45513075228125*^9, 3.455130762703125*^9}, {3.455130798953125*^9, 3.4551308011875*^9}, { 3.455130839078125*^9, 3.4551308800625*^9}, {3.455149704546875*^9, 3.45514975721875*^9}, {3.455149788609375*^9, 3.455149801203125*^9}, { 3.4551500673125*^9, 3.455150083578125*^9}, {3.455151782546875*^9, 3.45515179090625*^9}, {3.455154112640625*^9, 3.455154122984375*^9}, { 3.45515487546875*^9, 3.45515487575*^9}, {3.45515491865625*^9, 3.4551549191875*^9}, {3.455156272625*^9, 3.455156279171875*^9}, { 3.455156389625*^9, 3.455156411421875*^9}, {3.455156477984375*^9, 3.4551564928125*^9}, {3.45515653346875*^9, 3.45515655615625*^9}, { 3.45515661578125*^9, 3.455156704*^9}, {3.455156749953125*^9, 3.455156764515625*^9}, {3.45515688090625*^9, 3.455156928421875*^9}, { 3.455157032890625*^9, 3.455157033125*^9}, {3.4551572635625*^9, 3.455157316375*^9}, {3.455157426609375*^9, 3.455157430421875*^9}, { 3.45515779346875*^9, 3.45515780334375*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"MakeCombinedLogPlot", "[", RowBox[{"benchList_", ",", "timeout_", ",", "title_", ",", "solvers_"}], "]"}], ":=", RowBox[{"Rasterize", "[", RowBox[{ RowBox[{"ListLogPlot", "[", RowBox[{ RowBox[{"BenchListTimes", "[", RowBox[{"benchList", ",", "timeout"}], "]"}], ",", RowBox[{"PlotRange", "\[Rule]", "All"}], ",", RowBox[{"Frame", "\[Rule]", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"True", ",", "False"}], "}"}], ",", RowBox[{"{", RowBox[{"True", ",", "False"}], "}"}]}], "}"}]}], ",", RowBox[{"FrameLabel", "\[Rule]", RowBox[{"{", RowBox[{ "\"\\"", ",", "\"\\""}], "}"}]}], ",", RowBox[{"PlotLabel", "\[Rule]", RowBox[{"(", RowBox[{"title", " ", "<>", " ", "\"\< (Log)\>\""}], ")"}]}], ",", RowBox[{"PlotLegend", "\[Rule]", "solvers"}], ",", RowBox[{"LegendShadow", "\[Rule]", "None"}], ",", RowBox[{"LegendPosition", "\[Rule]", RowBox[{"{", RowBox[{ RowBox[{"+", ".5"}], ",", RowBox[{"-", ".4"}]}], "}"}]}], ",", RowBox[{"LegendTextSpace", "\[Rule]", "5"}], ",", " ", RowBox[{"LegendSize", "\[Rule]", "0.35"}], ",", RowBox[{"Joined", "\[Rule]", "True"}], ",", RowBox[{"PlotMarkers", "\[Rule]", RowBox[{"{", RowBox[{"Automatic", ",", "8"}], "}"}]}]}], "]"}], ",", RowBox[{"ImageSize", "\[Rule]", "640"}]}], "]"}]}]], "Input", CellChangeTimes->{{3.455154902984375*^9, 3.45515493040625*^9}, { 3.45515497809375*^9, 3.4551550065625*^9}, {3.455155068875*^9, 3.455155078875*^9}, {3.455156963*^9, 3.455156963421875*^9}, 3.455157034734375*^9, 3.45515731784375*^9}], Cell[BoxData[ RowBox[{"(*", " ", RowBox[{"for", " ", "creating", " ", "the", " ", "html", " ", "files"}], " ", "*)"}]], "Input", CellChangeTimes->{{3.455150957203125*^9, 3.455150965453125*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"timeouts", "=", RowBox[{"60", "*", RowBox[{"{", RowBox[{ "5", ",", "10", ",", "15", ",", "20", ",", "30", ",", "45", ",", "60"}], "}"}]}]}], ";"}]], "Input", CellChangeTimes->{{3.455151758890625*^9, 3.45515177053125*^9}, { 3.455159643171875*^9, 3.45515964378125*^9}}], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"solverNames", "=", RowBox[{"{", RowBox[{ "\"\\"", ",", "\"\\"", ",", "\"\\"", ",", "\"\\""}], "}"}]}]], "Input", CellChangeTimes->{{3.4551510121875*^9, 3.455151022828125*^9}}], Cell[BoxData[ RowBox[{"{", RowBox[{"\<\"mxc-sr06\"\>", ",", "\<\"mxc-sat07\"\>", ",", "\<\"mxc-sr08\"\>", ",", "\<\"mxc-sat09\"\>"}], "}"}]], "Output", CellChangeTimes->{3.455151023578125*^9, 3.4551583359375*^9, 3.455159470234375*^9, 3.45516155815625*^9, 3.4561821467747498`*^9}] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"benchmarkNames", "=", RowBox[{"{", RowBox[{ "\"\\"", ",", "\"\\"", ",", "\"\\"", ",", "\"\\"", ",", "\"\\"", ",", "\"\\"", ",", "\"\\""}], "}"}]}]], "Input", CellChangeTimes->{{3.455151138828125*^9, 3.455151191453125*^9}}], Cell[BoxData[ RowBox[{"{", RowBox[{"\<\"sr06.ts1\"\>", ",", "\<\"sr06.ts2\"\>", ",", "\<\"sr06.final\"\>", ",", "\<\"sat07\"\>", ",", "\<\"sr08.ts1\"\>", ",", "\<\"sr08.ts2\"\>", ",", "\<\"sr08.final\"\>"}], "}"}]], "Output", CellChangeTimes->{3.455151191796875*^9, 3.455158336625*^9, 3.455159470703125*^9, 3.4551615596875*^9, 3.4561821480716248`*^9}] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"benchmarkTitles", "=", RowBox[{"{", RowBox[{ "\"\\"", ",", " ", "\"\\"", ",", " ", "\"\\"", ",", " ", "\"\\"", ",", " ", "\"\\"", ",", " ", "\"\\"", ",", " ", "\"\\""}], "}"}]}]], "Input", CellChangeTimes->{{3.45515119253125*^9, 3.455151245*^9}}], Cell[BoxData[ RowBox[{"{", RowBox[{"\<\"Sat Race '06 TS 1\"\>", ",", "\<\"Sat Race '06 TS 2\"\>", ",", "\<\"Sat Race '06 Final\"\>", ",", "\<\"Sat Competition '07 Combined\"\>", ",", "\<\"Sat Race '08 TS 1\"\>", ",", "\<\"Sat Race '08 TS 2\"\>", ",", "\<\"Sat Race '08 Final\"\>"}], "}"}]], "Output", CellChangeTimes->{3.455151246921875*^9, 3.455158337296875*^9, 3.455159471203125*^9, 3.455161560890625*^9, 3.4561821486341248`*^9}] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"namesBySolver", "=", RowBox[{"Partition", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"#", "[", RowBox[{"[", "1", "]"}], "]"}], "<>", "\"\<.\>\"", "<>", RowBox[{"#", "[", RowBox[{"[", "2", "]"}], "]"}], "<>", "\"\<.log.arr\>\""}], ")"}], "&"}], "/@", RowBox[{"Tuples", "[", RowBox[{"{", RowBox[{"solverNames", ",", "benchmarkNames"}], "}"}], "]"}]}], ",", RowBox[{"Length", "[", "benchmarkNames", "]"}]}], "]"}]}]], "Input", CellChangeTimes->{{3.45515132815625*^9, 3.455151382703125*^9}, { 3.455151414921875*^9, 3.45515141859375*^9}, {3.455151464375*^9, 3.455151486453125*^9}, {3.455151546890625*^9, 3.455151570390625*^9}}], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"\<\"mxc-sr06.sr06.ts1.log.arr\"\>", ",", "\<\"mxc-sr06.sr06.ts2.log.arr\"\>", ",", "\<\"mxc-sr06.sr06.final.log.arr\"\>", ",", "\<\"mxc-sr06.sat07.log.arr\"\>", ",", "\<\"mxc-sr06.sr08.ts1.log.arr\"\>", ",", "\<\"mxc-sr06.sr08.ts2.log.arr\"\>", ",", "\<\"mxc-sr06.sr08.final.log.arr\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{"\<\"mxc-sat07.sr06.ts1.log.arr\"\>", ",", "\<\"mxc-sat07.sr06.ts2.log.arr\"\>", ",", "\<\"mxc-sat07.sr06.final.log.arr\"\>", ",", "\<\"mxc-sat07.sat07.log.arr\"\>", ",", "\<\"mxc-sat07.sr08.ts1.log.arr\"\>", ",", "\<\"mxc-sat07.sr08.ts2.log.arr\"\>", ",", "\<\"mxc-sat07.sr08.final.log.arr\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{"\<\"mxc-sr08.sr06.ts1.log.arr\"\>", ",", "\<\"mxc-sr08.sr06.ts2.log.arr\"\>", ",", "\<\"mxc-sr08.sr06.final.log.arr\"\>", ",", "\<\"mxc-sr08.sat07.log.arr\"\>", ",", "\<\"mxc-sr08.sr08.ts1.log.arr\"\>", ",", "\<\"mxc-sr08.sr08.ts2.log.arr\"\>", ",", "\<\"mxc-sr08.sr08.final.log.arr\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{"\<\"mxc-sat09.sr06.ts1.log.arr\"\>", ",", "\<\"mxc-sat09.sr06.ts2.log.arr\"\>", ",", "\<\"mxc-sat09.sr06.final.log.arr\"\>", ",", "\<\"mxc-sat09.sat07.log.arr\"\>", ",", "\<\"mxc-sat09.sr08.ts1.log.arr\"\>", ",", "\<\"mxc-sat09.sr08.ts2.log.arr\"\>", ",", "\<\"mxc-sat09.sr08.final.log.arr\"\>"}], "}"}]}], "}"}]], "Output", CellChangeTimes->{{3.455151349640625*^9, 3.45515138309375*^9}, 3.455151419171875*^9, {3.45515146840625*^9, 3.455151486875*^9}, 3.455151547609375*^9, 3.455151580796875*^9, 3.455158337875*^9, 3.45515947175*^9, 3.455161584671875*^9, 3.4561821492278748`*^9}] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"benchListPaths", "=", RowBox[{"Transpose", "[", "namesBySolver", "]"}]}]], "Input", CellChangeTimes->{{3.455151492078125*^9, 3.455151510609375*^9}, { 3.45515157159375*^9, 3.4551515824375*^9}, {3.455151661203125*^9, 3.45515166284375*^9}}], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"\<\"mxc-sr06.sr06.ts1.log.arr\"\>", ",", "\<\"mxc-sat07.sr06.ts1.log.arr\"\>", ",", "\<\"mxc-sr08.sr06.ts1.log.arr\"\>", ",", "\<\"mxc-sat09.sr06.ts1.log.arr\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{"\<\"mxc-sr06.sr06.ts2.log.arr\"\>", ",", "\<\"mxc-sat07.sr06.ts2.log.arr\"\>", ",", "\<\"mxc-sr08.sr06.ts2.log.arr\"\>", ",", "\<\"mxc-sat09.sr06.ts2.log.arr\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{"\<\"mxc-sr06.sr06.final.log.arr\"\>", ",", "\<\"mxc-sat07.sr06.final.log.arr\"\>", ",", "\<\"mxc-sr08.sr06.final.log.arr\"\>", ",", "\<\"mxc-sat09.sr06.final.log.arr\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{"\<\"mxc-sr06.sat07.log.arr\"\>", ",", "\<\"mxc-sat07.sat07.log.arr\"\>", ",", "\<\"mxc-sr08.sat07.log.arr\"\>", ",", "\<\"mxc-sat09.sat07.log.arr\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{"\<\"mxc-sr06.sr08.ts1.log.arr\"\>", ",", "\<\"mxc-sat07.sr08.ts1.log.arr\"\>", ",", "\<\"mxc-sr08.sr08.ts1.log.arr\"\>", ",", "\<\"mxc-sat09.sr08.ts1.log.arr\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{"\<\"mxc-sr06.sr08.ts2.log.arr\"\>", ",", "\<\"mxc-sat07.sr08.ts2.log.arr\"\>", ",", "\<\"mxc-sr08.sr08.ts2.log.arr\"\>", ",", "\<\"mxc-sat09.sr08.ts2.log.arr\"\>"}], "}"}], ",", RowBox[{"{", RowBox[{"\<\"mxc-sr06.sr08.final.log.arr\"\>", ",", "\<\"mxc-sat07.sr08.final.log.arr\"\>", ",", "\<\"mxc-sr08.sr08.final.log.arr\"\>", ",", "\<\"mxc-sat09.sr08.final.log.arr\"\>"}], "}"}]}], "}"}]], "Output", CellChangeTimes->{ 3.455151510890625*^9, 3.455151548453125*^9, {3.455151579484375*^9, 3.455151582875*^9}, 3.45515166625*^9, 3.455158339515625*^9, 3.45515947259375*^9, 3.455161585734375*^9, 3.4561821506341248`*^9}] }, Open ]], Cell[BoxData[ RowBox[{ RowBox[{"SetDirectory", "[", RowBox[{"NotebookDirectory", "[", "]"}], "]"}], ";"}]], "Input", CellChangeTimes->{{3.455151284125*^9, 3.455151299109375*^9}, 3.45515161896875*^9}], Cell[BoxData[ RowBox[{ RowBox[{"benchLists", "=", RowBox[{"ReadBenchList", "/@", "benchListPaths"}]}], ";"}]], "Input", CellChangeTimes->{{3.4551516276875*^9, 3.4551516734375*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"ExportBenchmark", "[", RowBox[{"name_", ",", "title_", ",", "benchList_", ",", "solverNames_"}], "]"}], ":=", RowBox[{"Export", "[", RowBox[{ RowBox[{"name", "<>", "\"\<.html\>\""}], ",", RowBox[{"TableForm", "@", RowBox[{"Flatten", "[", "\[IndentingNewLine]", RowBox[{"{", RowBox[{ RowBox[{"Framed", "[", "\"\\"", "]"}], ",", "\[IndentingNewLine]", RowBox[{"BlankSpaces", "[", "3", "]"}], ",", "\[IndentingNewLine]", RowBox[{"MakeCombinedPlot", "[", RowBox[{"benchList", ",", RowBox[{"Last", "[", "timeouts", "]"}], ",", "title", ",", "solverNames"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"BlankSpaces", "[", "2", "]"}], ",", "\[IndentingNewLine]", RowBox[{"MakeCombinedLogPlot", "[", RowBox[{"benchList", ",", RowBox[{"Last", "[", "timeouts", "]"}], ",", "title", ",", "solverNames"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"BlankSpaces", "[", "3", "]"}], ",", "\[IndentingNewLine]", RowBox[{"Framed", "[", "\"\\"", "]"}], ",", "\[IndentingNewLine]", RowBox[{"BlankSpaces", "[", "3", "]"}], ",", "\[IndentingNewLine]", RowBox[{"MakeCombinedSummaryTable", "[", RowBox[{"benchList", ",", "timeouts", ",", "solverNames"}], "]"}], ",", "\[IndentingNewLine]", RowBox[{"BlankSpaces", "[", "3", "]"}], ",", "\[IndentingNewLine]", RowBox[{"Framed", "[", "\"\\"", "]"}], ",", "\[IndentingNewLine]", RowBox[{"BlankSpaces", "[", "3", "]"}], ",", "\[IndentingNewLine]", RowBox[{"MakeCombinedBenchmarkTable", "[", RowBox[{"benchList", ",", "solverNames"}], "]"}]}], "}"}], "]"}]}]}], "]"}]}]], "Input", CellChangeTimes->{{3.455154540359375*^9, 3.455154639375*^9}, { 3.4551551404375*^9, 3.45515516075*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"Sat07CraftedBenchList", "=", RowBox[{ RowBox[{ RowBox[{"Take", "[", RowBox[{"#", ",", "201"}], "]"}], "&"}], "/@", RowBox[{"benchLists", "[", RowBox[{"[", "4", "]"}], "]"}]}]}], ";"}]], "Input", CellChangeTimes->{{3.455154668125*^9, 3.45515474696875*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"Sat07IndustrialBenchList", "=", RowBox[{ RowBox[{ RowBox[{"Drop", "[", RowBox[{"#", ",", "201"}], "]"}], "&"}], "/@", RowBox[{"benchLists", "[", RowBox[{"[", "4", "]"}], "]"}]}]}], ";"}]], "Input", CellChangeTimes->{{3.45515474809375*^9, 3.455154763203125*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"allBenches", "=", RowBox[{"{", RowBox[{ RowBox[{"Join", "[", RowBox[{"benchmarkNames", ",", RowBox[{"{", RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}], "]"}], ",", RowBox[{"Join", "[", RowBox[{"benchmarkTitles", ",", " ", RowBox[{"{", RowBox[{ "\"\\"", ",", " ", "\"\\""}], "}"}]}], "]"}], ",", RowBox[{"Join", "[", RowBox[{"benchLists", ",", RowBox[{"{", RowBox[{"Sat07CraftedBenchList", ",", "Sat07IndustrialBenchList"}], "}"}]}], "]"}]}], "}"}]}], ";"}]], "Input", CellChangeTimes->{{3.455155452109375*^9, 3.455155455984375*^9}, { 3.4551554998125*^9, 3.455155499984375*^9}, {3.455155565171875*^9, 3.45515570125*^9}, 3.455155774890625*^9}], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{ RowBox[{"ExportBenchmark", "[", RowBox[{"#1", ",", "#2", ",", "#3", ",", "solverNames"}], "]"}], "&"}], "@@@", RowBox[{"Transpose", "[", "allBenches", "]"}]}], ";"}]], "Input", CellChangeTimes->{{3.455155775828125*^9, 3.455155830296875*^9}}] }, WindowSize->{1912, 1100}, WindowMargins->{{0, Automatic}, {Automatic, 0}}, FrontEndVersion->"7.0 for Microsoft Windows (32-bit) (November 10, 2008)", StyleDefinitions->"Default.nb" ] (* End of Notebook Content *) (* Internal cache information *) (*CellTagsOutline CellTagsIndex->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[545, 20, 265, 7, 31, "Input"], Cell[813, 29, 611, 14, 72, "Input"], Cell[1427, 45, 643, 16, 31, "Input"], Cell[2073, 63, 304, 7, 31, "Input"], Cell[2380, 72, 268, 5, 31, "Input"], Cell[2651, 79, 197, 4, 31, "Input"], Cell[2851, 85, 391, 12, 31, "Input"], Cell[3245, 99, 459, 11, 31, "Input"], Cell[3707, 112, 558, 15, 31, "Input"], Cell[4268, 129, 1543, 34, 52, "Input"], Cell[5814, 165, 214, 5, 31, "Input"], Cell[6031, 172, 240, 5, 31, "Input"], Cell[6274, 179, 950, 21, 31, "Input"], Cell[7227, 202, 425, 11, 31, "Input"], Cell[7655, 215, 557, 15, 31, "Input"], Cell[8215, 232, 602, 16, 31, "Input"], Cell[8820, 250, 2047, 49, 152, "Input"], Cell[10870, 301, 284, 7, 31, "Input"], Cell[11157, 310, 933, 22, 52, "Input"], Cell[12093, 334, 180, 4, 31, "Input"], Cell[12276, 340, 77, 1, 31, "Input"], Cell[12356, 343, 323, 9, 31, "Input"], Cell[12682, 354, 703, 17, 31, "Input"], Cell[13388, 373, 3636, 69, 72, "Input"], Cell[17027, 444, 1832, 44, 72, "Input"], Cell[18862, 490, 201, 4, 31, "Input"], Cell[19066, 496, 331, 9, 31, "Input"], Cell[CellGroupData[{ Cell[19422, 509, 261, 6, 31, "Input"], Cell[19686, 517, 291, 5, 30, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[20014, 527, 345, 7, 31, "Input"], Cell[20362, 536, 367, 6, 30, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[20766, 547, 454, 9, 31, "Input"], Cell[21223, 558, 455, 8, 30, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[21715, 571, 771, 19, 31, "Input"], Cell[22489, 592, 1815, 38, 88, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[24341, 635, 270, 5, 31, "Input"], Cell[24614, 642, 1871, 41, 88, "Output"] }, Open ]], Cell[26500, 686, 211, 5, 31, "Input"], Cell[26714, 693, 188, 4, 31, "Input"], Cell[26905, 699, 1965, 39, 292, "Input"], Cell[28873, 740, 322, 9, 31, "Input"], Cell[29198, 751, 328, 9, 31, "Input"], Cell[29529, 762, 937, 24, 31, "Input"], Cell[30469, 788, 303, 7, 31, "Input"] } ] *) (* End of internal cache information *)