Patents by Inventor Pavel Avgustinov

Pavel Avgustinov has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9507591
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot T is received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    Type: Grant
    Filed: January 5, 2016
    Date of Patent: November 29, 2016
    Assignee: Semmle Limited
    Inventors: Anders Starcke Henriksen, Arthur Baars, Pavel Avgustinov, Julian Tibble, Max Schaefer, Oege de Moor
  • Patent number: 9507694
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for generating normalized analysis artifacts for a source code base. One of the methods includes receiving a request to perform an analysis of a collection of source code files in a particular file system, wherein each source code file in the particular file system has a respective associated original file path. One or more normalized analysis artifacts are generated for the collection of source code files, including applying a file path transformation function to the original file path of each source code file referenced by the analysis artifacts to generate a normalized file path for the source code file, wherein each reference in the normalized analysis artifacts to a particular source code file uses the normalized file path for the particular source code file instead of the original file path for the particular source code file.
    Type: Grant
    Filed: October 30, 2015
    Date of Patent: November 29, 2016
    Assignee: Semmle Limited
    Inventors: Julian Tibble, Pavel Avgustinov
  • Patent number: 9411578
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot T is received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    Type: Grant
    Filed: July 8, 2015
    Date of Patent: August 9, 2016
    Assignee: Semmle Limited
    Inventors: Anders Starcke Henriksen, Arthur Baars, Pavel Avgustinov, Julian Tibble, Max Schaefer, Oege de Moor
  • Patent number: 9411579
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot T is received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    Type: Grant
    Filed: December 11, 2015
    Date of Patent: August 9, 2016
    Inventors: Anders Starcke Henriksen, Arthur Baars, Pavel Avgustinov, Julian Tibble, Max Schaefer, Oege de Moor
  • Publication number: 20160132326
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot Tis received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    Type: Application
    Filed: January 5, 2016
    Publication date: May 12, 2016
    Inventors: Anders Starcke Henriksen, Arthur Baars, Pavel Avgustinov, Julian Tibble, Max Schaefer, Oege de Moor
  • Publication number: 20160098271
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot T is received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    Type: Application
    Filed: December 11, 2015
    Publication date: April 7, 2016
    Inventors: Anders Starcke Henriksen, Arthur Baars, Pavel Avgustinov, Julian Tibble, Max Schaefer, Oege de Moor
  • Patent number: 9262157
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot T is received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    Type: Grant
    Filed: April 24, 2015
    Date of Patent: February 16, 2016
    Assignee: Semmle Limited
    Inventors: Anders Starcke Henriksen, Arthur Baars, Pavel Avgustinov, Julian Tibble, Max Schaefer, Oege de Moor
  • Publication number: 20150347163
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for extracting source code. One of the methods includes receiving, by a newly created process, a request to execute code of an executable file in the newly created process, wherein the request specifies a parameter. The newly created process loads a process interception library. Library initialization code of the process interception library determines whether the parameter should be intercepted. In response to determining that the parameter should be intercepted, the parameter is provided to another process.
    Type: Application
    Filed: July 8, 2015
    Publication date: December 3, 2015
    Inventors: Julian Tibble, Pavel Avgustinov, Peter Cawley
  • Publication number: 20150347126
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for aggregating source code metric values. One of the methods includes obtaining data representing a directed graph, wherein one or more nodes of the graph are associated with a respective set of one or more metric instances, wherein each set of metric instances for each node includes all metric instances occurring in sets of any node descendant from the node in the graph, wherein each metric instance identifies a location in a source code base, and wherein each metric instance has a respective metric value, a respective identifier, and a respective attribute type. An attribute value is computed for a first node in the graph from the respective metric value of each metric instance in a first set of metric instances associated with the first node.
    Type: Application
    Filed: July 8, 2015
    Publication date: December 3, 2015
    Inventors: Julian Tibble, Pavel Avgustinov, Yorck Huenke, Arthur Baars
  • Publication number: 20150324195
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot T is received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    Type: Application
    Filed: July 8, 2015
    Publication date: November 12, 2015
    Inventors: Anders Starcke Henriksen, Arthur Baars, Pavel Avgustinov, Julian Tibble, Max Schaefer, Oege de Moor
  • Publication number: 20150309790
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot T is received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    Type: Application
    Filed: April 24, 2015
    Publication date: October 29, 2015
    Inventors: Anders Starcke Henriksen, Arthur Baars, Pavel Avgustinov, Julian Tibble, Max Schaefer, Oege de Moor
  • Patent number: 9110737
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for extracting source code. One of the methods includes receiving, by a newly created process, a request to execute code of an executable file in the newly created process, wherein the request specifies a parameter. The newly created process loads a process interception library. Library initialization code of the process interception library determines whether the parameter should be intercepted. In response to determining that the parameter should be intercepted, the parameter is provided to another process.
    Type: Grant
    Filed: May 30, 2014
    Date of Patent: August 18, 2015
    Assignee: Semmle Limited
    Inventors: Julian Tibble, Pavel Avgustinov, Peter Cawley
  • Patent number: 9098377
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for aggregating source code metric values. One of the methods includes obtaining data representing a directed graph, wherein one or more nodes of the graph are associated with a respective set of one or more metric instances, wherein each set of metric instances for each node includes all metric instances occurring in sets of any node descendant from the node in the graph, wherein each metric instance identifies a location in a source code base, and wherein each metric instance has a respective metric value, a respective identifier, and a respective attribute type. An attribute value is computed for a first node in the graph from the respective metric value of each metric instance in a first set of metric instances associated with the first node.
    Type: Grant
    Filed: May 30, 2014
    Date of Patent: August 4, 2015
    Inventors: Julian Tibble, Pavel Avgustinov, Yorck Huenke, Arthur Baars, Anders Starcke Henriksen
  • Patent number: 8332385
    Abstract: A method and system is provided for computing an approximation of the results of a query. The approximation represents a superset of all possible results, by computing a set of records of types (as opposed to a set of records of values, which is the normal result of a query). This is different from conventional systems, which typically infer types for each field individually. For each record of types, one may also keep track of equalities of fields to improve the precision of the approximation. The approximation can be used to detect erroneous parts of queries that always return an empty result, regardless of the contents of the data source. Furthermore, the same approximation is also useful in performing optimizations: first, by eliminating parts of procedure calls that are guaranteed to be irrelevant to the calling context, and second, by eliminating unnecessary type tests in the query.
    Type: Grant
    Filed: March 11, 2009
    Date of Patent: December 11, 2012
    Assignee: Semmle Limited
    Inventors: Oege de Moor, Damien Sereni, Pavel Avgustinov, Mathieu Verbaere, Max Schaefer
  • Patent number: 8095515
    Abstract: A method and system is provided for computing an approximation of the number of distinct results of a query over a relational data source. The approximation uses information about dependencies between fields of relations, in particular the number of distinct values of a field for each possible value of another field. This information can be obtained by analysis of the data stored in the relational data source, or may be specified as annotations to a database schema. An approximation of the number of results is and the dependencies between fields of each part of the query are computed. The approximation can be used to reorder parts of a query, by using the estimated size of parts to guide reordering. The approximation can further be used to determine which parts of a query are relevant to the evaluation of a subquery, which can be used to guide the magic sets transformation.
    Type: Grant
    Filed: March 18, 2009
    Date of Patent: January 10, 2012
    Assignee: Semmle Limited
    Inventors: Damien Sereni, Pavel Avgustinov, Oege de Moor
  • Publication number: 20090240649
    Abstract: A method and system is provided for computing an approximation of the number of distinct results of a query over a relational data source. The approximation uses information about dependencies between fields of relations, in particular the number of distinct values of a field for each possible value of another field. This information can be obtained by analysis of the data stored in the relational data source, or may be specified as annotations to a database schema. An approximation of the number of results is and the dependencies between fields of each part of the query are computed. The approximation can be used to reorder parts of a query, by using the estimated size of parts to guide reordering. The approximation can further be used to determine which parts of a query are relevant to the evaluation of a subquery, which can be used to guide the magic sets transformation.
    Type: Application
    Filed: March 18, 2009
    Publication date: September 24, 2009
    Applicant: Semmle Limited
    Inventors: DAMIEN SERENI, Pavel Avgustinov, Oege de Moor
  • Publication number: 20090234801
    Abstract: A method and system is provided for computing an approximation of the results of a query. The approximation represents a superset of all possible results, by computing a set of records of types (as opposed to a set of records of values, which is the normal result of a query). This is different from conventional systems, which typically infer types for each field individually. For each record of types, one may also keep track of equalities of fields to improve the precision of the approximation. The approximation can be used to detect erroneous parts of queries that always return an empty result, regardless of the contents of the data source. Furthermore, the same approximation is also useful in performing optimizations: first, by eliminating parts of procedure calls that are guaranteed to be irrelevant to the calling context, and second, by eliminating unnecessary type tests in the query.
    Type: Application
    Filed: March 11, 2009
    Publication date: September 17, 2009
    Applicant: Semmle Limited
    Inventors: Oege De Moor, Damien Sereni, Pavel Avgustinov, Mathieu Verbaere, Max Schaefer