Abstrakt. STP är ett beslutsförfarande för tillfredsställande av kvantifierfria formler i teorin om bit-vektorer och matriser som har optimerats för stora problem som stött på i program för programvaruanalys. Den grundläggande arkitekturen för förfarandet består av förbehandlingsalgoritmer på ordnivå följt av översättning till SAT. De primära flaskhalsarna i programverifiering och felsökning är stora matriser och linjär bit-vektor aritmetik. Nya algoritmer baserade på abstraktion-raffinaderi paradigm presenteras för resonemang om stora matriser. En lösning för bit-vektor linjär aritmetik presenteras som eliminerar variabler och delar av variabler för att möjliggöra andra omvandlingar, och minska storleken på problemet som så småningom tas emot av SAT lösaren. Dessa och andra algoritmer har implementerats i STP, som har testats kraftigt över tusentals exempel som erhållits från flera verkliga applikationer. Experimentella resultat visar att ovanstående blandning av algoritmer tillsammans med den övergripande arkitekturen är mycket effektivare, för en mängd olika tillämpningar, än en direkt översättning av den ursprungliga formeln till SAT eller andra jämförbara beslutsförfaranden.
STP REF är ett beslutsförfarande för både bit-vektor aritmetik och teorin om matriser som är särskilt inriktad på att lösa frågor sökvägar i verifiering och testning av programvara.
A decision procedure for bit-vectors and arrays
{'venue': 'In Proceedings of the Computer Aided Verification Conference', 'journal': None, 'mag_field_of_study': ['Computer Science']}