The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
May. 15, 2012
Filed:
Aug. 28, 2009
Margus Veanes, Bellevue, WA (US);
Nikolai Tillmann, Redmond, WA (US);
Jonathan Paul DE Halleux, Seattle, WA (US);
Pavel Grigorenko, Tallinn, EE;
Margus Veanes, Bellevue, WA (US);
Nikolai Tillmann, Redmond, WA (US);
Jonathan Paul de Halleux, Seattle, WA (US);
Pavel Grigorenko, Tallinn, EE;
Microsoft Corporation, Redmond, WA (US);
Abstract
A symbolic query exploration (QEX) module automatically produces output information that can be used to evaluate a database. The QEX module operates by converting an input query into a formula for processing by a satisfiability module theories (SMT) solver module. The SMT solver module generates a model that satisfies the formula. The model yields table information that is used to populate the database and, optionally, parameter information that is used to instantiate the query. A query evaluation module then submits the instantiated query to the populated database and evaluates whether an evaluation result produced thereby agrees with pre-specified condition information. The QEX module can preprocess the formula using either (or both) an eager expansion approach (in which the formula is expanded in an upfront manner) or a lazy expansion approach (in which axioms are identified for later possible expansion by the SMT solver module).