DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . This office action is in response to communication filed on 12/1/2025.
The instant application having application No. 18/446,766 filed on August 9, 2023, presents claims 1-20 for examination. The instant application has no priority data.
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on December 1, 2025 has been entered.
Status of the Claims
Claims 1, 9, 15, 16, 18 and 19 are amended, claims 1-20 are currently pending in the application.
Response to Amendment
(A). Regarding 35 USC § 112 (a) rejections: Applicant's amendment to claims appropriately addressed the 112 (a) rejections to claims 1-20, the rejections are withdrawn.
(B). Regarding 35 U.S.C. § 101 rejection: Applicant's amendment is not persuasive, The rejection to the claims 1-20 under 35 U.S.C. § 101 is maintained.
(C). Regarding art rejection: In regards to pending claims Applicant’s arguments are not persuasive; the rejections are maintained.
Examiner Notes
Examiner cites particular columns, paragraphs, figures and line numbers in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in their entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the examiner.
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
With respect to claim 1, This claim is within at least one of the four categories of patent eligible subject matter as it is directed to an apparatus claim under Step 1.
Under Prong 1, Step 2A:
However, the limitations of claim 1,
“perform a semantic comparison of at least a portion of the first data set with at least a portion of the second data set to compute a difference between the first data set and the second data set which is indicative of a corresponding difference between the first executable code version of the software package and the second executable code version of the software package.”
as drafted, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. The limitations encompass a human mind carrying out the functions through observation, evaluation, judgment and /or opinion, or even with the aid of pen and paper. E.g. human can manually perform a semantic comparison of at least a portion of the first data set with at least a portion of the second data set to compute a difference between the first data set and the second data set, and the difference is indicative of a corresponding difference between the first executable code version of the software package and the second executable code version of the software package. Note that the executable code is not actually involved in the process. Thus, the limitation recites and falls within the “Mental Processes” grouping of abstract ideas under Prong 1 Step 2A.
Under Prong 2, Step 2A:
The judicial exception is not integrated into a practical application. The claim recites the following additional elements
“An apparatus comprising:
at least one processing platform comprising at least one processor coupled to at least one memory, wherein the at least one processing platform is configured to:
obtain a first data set indicative of a first executable code version of a software package and a second data set indicative of a second executable code version of the software package, wherein the software package is a binary software package including pre-built executable code;
Wherein “an apparatus”, “one processing platform”, “one processor”, and “one memory” are cited as generic computer components, or merely as a tool to implement the identified abstract idea, do not integrate the judicial exception into a practical application. Refer to MPEP 2106.05(f). Obtaining data is insignificant extra-solution activity such as data gathering, see MPEP 2106.05(g). Note that the data sets are indicative of executable code versions of the software package, but are not actual executable code, and are, in fact, source code. See p5 last paragraph to p7 of the instant specification. “wherein the software package is a binary software package including pre-built executable code.” as drafted, is merely indicating a field of use or technological environment in which to apply a judicial exception, and does not integrate the judicial exception into a practical application. See MPEP § 2106.05(h).
Under Step 2B:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements “an apparatus”, “one processing platform”, “one processor”, and “one memory” are mere use of generic computer to implement the abstract idea, do not amount to significantly more than the judicial exception, thus, are not an inventive concept. “obtain a first data set indicative of a first executable code version of a software package and a second data set indicative of a second executable code version of the software package;” is insignificant extra-solution activity and is recognized as well-understood, routine, conventional activity, see MPEP 2106.05(d), II, Symantec for receiving and transmitting data. “wherein the software package is a binary software package including pre-built executable code.” as drafted, is merely indicating a field of use or technological environment in which to apply a judicial exception, and does not amount to significantly more than the exception itself. See MPEP § 2106.05(h). Accordingly, the claim does not appear to be patent eligible under 35 USC 101.
With respect to claim 15, This claim is within at least one of the four categories of patent eligible subject matter as it is directed to a computer program product claim under Step 1.
This claim recites a computer program product to implement a method that is disclosed in claim 1 and therefore recites the same abstract idea as claim 1, please see the office action analysis regarding claim 1.
Claim 15 recites one additional element that is not recited in claim 1, i.e. a non-transitory processor-readable storage medium, but the storage medium is cited as generic computer component, or merely as a tool to implement the identified abstract idea, does not integrate the judicial exception into a practical application, and does not amount to significantly more than the judicial exception. Refer to MPEP 2106.05(f).
With respect to claim 18, This claim is within at least one of the four categories of patent eligible subject matter as it is directed to a method claim under Step 1.
This claim recites a method that is disclosed in claim 1 and therefore recites the same abstract idea as claim 1, please see the office action analysis regarding claim 1.
Claim 18 does not recite any additional elements that are not recited in claim 1.
With respect to claim 2, “wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to represent each component in the software package as a multi-dimensional vector, wherein each dimension of the multi-dimensional vector represents an attribute of the component.” The limitation of representing each component in the software package as a multi-dimensional vector, wherein each dimension of the multi-dimensional vector represents an attribute of the component, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of a generic computer component. That is, other than reciting “one processing platform”, nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the “one processing platform” language, “representing” in the context of this claim encompasses the user manually represent each component in the software package as a multi-dimensional vector, wherein each dimension of the multi-dimensional vector represents an attribute of the component. The one processing platform is cited as generic computer component, or merely as a tool to implement the identified abstract idea, does not integrate the judicial exception into a practical application, and does not amount to significantly more than the judicial exception. Refer to MPEP 2106.05(f).
With respect to claim 3, “wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to represent the multi-dimensional vectors for the components in the software package as a matrix, wherein one of rows and columns of the matrix represent the components and the other of the rows and columns of the matrix represent attributes of the components.” Similar to claim 2, the “representing” process is mental process, and the one processing platform is cited as a generic computer component. See analysis of claim 2 above.
With respect to claim 4, “wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to pre-process data in the matrix to convert categorical criteria into numeric features and normalize the numeric features.” Similar to claim 2, the “pre-processing” process is mental process, and the one processing platform is cited as a generic computer component. See analysis of claim 2 above.
With respect to claim 5, “wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to represent a matrix for the first executable code version of the software package as a first point-cloud and a matrix of the second executable code version of the software package as a second point-cloud.” Similar to claim 2, the “representing” process is mental process, and the one processing platform is cited as a generic computer component. See analysis of claim 2 above.
With respect to claim 6, “wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to convert the first point-cloud into a first mesh and the second point-cloud into a second mesh.” Similar to claim 2, the “converting” process is mental process, and the one processing platform is cited as a generic computer component. See analysis of claim 2 above.
With respect to claim 7, “wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to compute distances between elements of the first point-cloud and the second mesh and distances between the second point-cloud and the first mesh.” Similar to claim 2, the “computing” process is mental process, and the one processing platform is cited as a generic computer component. See analysis of claim 2 above.
With respect to claim 8, “wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to compute an overall objective distance score between the first point-cloud and the second point-cloud based on the computed distances.” Similar to claim 2, the “computing” process is mental process, and the one processing platform is cited as a generic computer component. See analysis of claim 2 above.
With respect to claim 9, “wherein the overall objective distance score represents [[a]] the corresponding difference between the first executable code version of the software package and the second executable code version of the software package.” The claim further limits the overall objective distance score of claim 8, it recites same abstract idea as claim 8.
With respect to claim 10, “wherein the at least one processing platform is further configured to generate a scoring data structure wherein the overall objective distance score computed between the first executable code version of the software package and the second executable code version of the software package is stored in the scoring data structure.” Similar to claim 2, the “generating” process is mental process, and the one processing platform is cited as a generic computer component. See analysis of claim 2 above. “Storing” process is recognized as well‐understood, routine, and conventional functions, refer to MPEP 2106.05(d), II, Versata Dev. Group, Inc. v. SAP Am., Inc. for retrieving and storing data.
With respect to claim 11, “wherein one or more other overall objective distance scores computed between other executable code versions of the software package are stored in the scoring data structure.” The “storing” process is insignificant extra-solution activity such as data gathering, see MPEP 2106.05(g) , and is recognized as well‐understood, routine, and conventional functions, refer to MPEP 2106.05(d), II, Versata Dev. Group, Inc. v. SAP Am., Inc. for retrieving and storing data.
With respect to claim 12, “wherein, when generating the scoring data structure, the at least one processing platform is further configured to normalize the overall objective distance scores.” Similar to claim 2, the “generating” and “normalizing” processes are mental processes, and the one processing platform is cited as a generic computer component. See analysis of claim 2 above.
With respect to claim 13, “wherein, when generating the scoring data structure, the at least one processing platform is further configured to use a hyper-parameter threshold value to determine a criticality of an upgrade between executable code versions of the software package.” Similar to claim 2, the “generating” and “determining” processes are mental processes, and the one processing platform is cites as a generic computer component. See analysis of claim 2 above.
With respect to claim 14, “wherein, when generating the scoring data structure, the at least one processing platform is further configured to categorize executable code version differences into color-coded bands to reflect the criticality of the upgrade between the executable code versions of the software package.” Similar to claim 2, the “generating” and “categorizing” processes are mental processes, and the one processing platform is cited as a generic computer component. See analysis of claim 2 above.
With respect to claims 16 and 19, “wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the one or more software programs, when executed by the at least one processing device, further causes the at least one processing device to perform a distance score calculation process to compute the difference between the first executable code version of the software package and the second executable code version of the software package.” Similar to claim 2, the “computing” process is mental process; the one or more software programs, and one processing device are cited as a generic computer component. See analysis of claim 2 above.
With respect to claims 17 and 20, “wherein the one or more software programs, when executed by the at least one processing device, further causes the at least one processing device to generate a scoring data structure, wherein a distance score computed between the first executable code version of the software package and the second executable code version of the software package is stored in the scoring data structure along with one or more other distance scores computed between other executable code versions of the software package.” Similar to claim 10, the “generating” process is mental process; the one or more software programs, and one processing device are cited as a generic computer component. “The storing” is recognized as well‐understood, routine, and conventional functions, refer to MPEP 2106.05(d), II, Versata Dev. Group, Inc. v. SAP Am., Inc. for retrieving and storing data. See analysis of claim 10 above.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1, 15, and 18 are rejected under 35 U.S.C. 102 (a) (1) as being anticipated by Ji et al. (US 20160062765 A1 – hereinafter Ji).
With respect to claim 1 (Currently Amended), Ji anticipates An apparatus comprising (e.g. Fig. 1):
at least one processing platform comprising at least one processor coupled to at least one memory, wherein the at least one processing platform is configured to (e.g. Fig. 1):
obtain a first data set indicative of a first executable code version of a software package and a second data set indicative of a second executable code version of the software package, wherein the software package is a binary software package including pre-built executable code (e.g. Fig. 3, para [0037], “According to embodiments of the present disclosure first debugging information 312 can be obtained from first source code version 310 (as shown by an arrow A1), and second debugging information 322 can be obtained from second source code version 320 (as shown by an arrow A2). …” para [0038], “… Alternatively, since at this point the first source code version and the second source code version are two versions in the regression testing, the first debugging information and the second debugging information can be obtained directly from executable programs used for the regression testing.” Wherein the executable programs are inherently binary software package including pre-built executable code. para [0035], “… In the context of the present disclosure, debugging information is described by means of DWARF (Debugging With Attributed Record Formats). DWARF is widely used for debugging information. DWARF records a mapping relationship between memory addresses of executable programs and source code corresponding to these memory addresses.” This paragraph teaches that the debugging information is indicative of executable code version of a software package); and
perform a semantic comparison of at least a portion of the first data set with at least a portion of the second data set to compute a difference between the first data set and the second data set which is indicative of a corresponding difference between the first executable code version of the software package and the second executable code version of the software package (e.g. para [0037], “… Subsequently, through a comparison/identifying step as shown by an arrow B2, it can be rapidly determined whether there are matched functions between first source code version 310 and second source code version 320, and further semantic differences 330 can be identified. …” para [0035] as cited above teaches that the debugging information is indicative of executable code version of a software package, thus, the semantic differences are indicative of differences of the executable code versions. Also see para [0038-0042]).
With respect to claim 15 (Currently Amended), it is directed to a computer program product to implement the method disclosed in claim 1, please see the rejections directed to claim 1 above which also cover the limitations recited in claim 15. Note that, Ji teaches A computer program product comprising a non-transitory processor-readable storage medium having stored therein one or more software programs wherein, when executed by at least one processing device, causes the at least one processing device to (e.g. Fig. 1):
With respect to claim 18 (Currently Amended), it is directed to a method disclosed in claim 1, please see the rejections directed to claim 1 above which also cover the limitations recited in claim 18.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim 2 is rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog et al. (US 20220303352 A1 -- hereinafter Herzog).
With respect to claim 2, Ji anticipates The apparatus of claim 1, but does not appear to explicitly anticipate wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to represent each component in the software package as a multi-dimensional vector, wherein each dimension of the multi-dimensional vector represents an attribute of the component. However, this is taught in analogous art, Herzog (e.g. para [0127], “ In some implementations, a given application fingerprint may be represented as a vector that includes a plurality of values that represent the corresponding process attributes. Thus, the vector may be viewed as an embedding of the corresponding process attributes in a multi-dimensional vector space. …”)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the invention of Ji with the invention of Herzog because it provides techniques for uniquely representing a software application. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for uniquely representing a software application (Herzog, para [0123]).
Claim 3 is rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog as applied to claim 2, in further view of LI et al. (CN 114327608 A -- hereinafter LI, refer to the attached NPL translation copy).
With respect to claim 3, Ji as modified by Herzog discloses The apparatus of claim 2, but does not appear to explicitly disclose wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to represent the multi-dimensional vectors for the components in the software package as a matrix, wherein one of rows and columns of the matrix represent the components and the other of the rows and columns of the matrix represent attributes of the components. However, this is taught in analogous art, LI (e.g. p4, paragraph 7, “in S2, constructing the entity attribute matrix of the code module from the code data to be reconstructed comprises”, p4, paragraph 9, “in the formula, v (atti, entj) represents the value of the attribute i of the entity j; atti belongs to entj or atti, entj represents attribute i represents the method belonging to the entity j represents the class or the entity j represented by the class.” Wherein v(atti, entj) is a two dimensional matrix, one of rows and columns of the matrix represent entities which read on components, and the other of the rows and columns of the matrix represent attributes of the entities.)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the invention of Ji with the invention of LI because it provides techniques for reconstructing software code with improved security, readability and reusability. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for reconstructing software code with improved security, readability and reusability (LI, p3, paragraph 5).
Claim 4 is rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog and LI as applied to claim 3, in further view of Salameh et al. (US 20230083161 A1 -- hereinafter Salameh).
With respect to claim 4, Ji as modified by Herzog and Li discloses The apparatus of claim 3, but does not appear to explicitly disclose wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to pre-process data in the matrix to convert categorical criteria into numeric features and normalize the numeric features. However, this is taught in analogous art, Salameh (e.g. para [0044], “… As described above, the portion of the input data to which the one or more machine learning models may be applied may include information extracted or derived from the input data, such as by converting frames of video data into a data structure that represents the video frame content as an array or matrix of numeric values (e.g., values derived from grey scale levels, luminance, etc.). Additionally, the video frame data may be subjected to other processing prior to generating the data structure, such as normalization, down-sampling, scaling, or other processes.”)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to incorporate the invention of Salameh because it provides techniques for converting non-numeric matrix data into numeric matric data so it can be input into a computer and processed. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for converting non-numeric matrix data into numeric matrix data so it can be input into a computer and processed (Salameh, para [0026]).
Claim 5 is rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog and LI as applied to claim 3, in further view of Wang et al. (US 11327021 B1 -- hereinafter Wang)
With respect to claim 5 (Previously presented), Ji as modified by Herzog and Li discloses The apparatus of claim 3, but does not appear to explicitly disclose wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to represent a matrix for the first executable code version of the software package as a first point-cloud and a matrix of the second executable code version of the software package as a second point-cloud. However, this is taught in analogous art, Wang (e.g. col 10 line 64 to col 11 line 10, “… Point cloud plots are generated from the matrix components X, Y, Z, R, G, and B by using a pointcloud function for point cloud generation.” Ji and Li teach a matrix representing the executable code versions, see office action regarding claim 3 above. The point cloud generation technique applies to the instant case, hence renders the claim feature obvious.)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to incorporate the invention of Wang because it provides techniques for point cloud generation from a matrix that facilitate matrix data analysis. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for point cloud generation from a matrix that facilitate matrix data analysis (Wang, col 10 line 64 to col 11 line 10).
Claim 6 is rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog, LI and Wang as applied to claim 5, in further view of Fleishman et al. (US 20180286120 A1 -- hereinafter Fleishman)
With respect to claim 6, Ji as modified by Herzog, Li and Wang discloses The apparatus of claim 5, but does not appear to explicitly disclose wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to convert the first point-cloud into a first mesh and the second point-cloud into a second mesh. However, this is taught in analogous art, Fleishman (e.g. para [0030], “… For computer-implemented 3D rendering and modelling, a point-cloud is often converted to a polygon mesh or triangle mesh. The meshes are a collection of vertices, edges and faces which represent a surface of an object or of a collection of objects. Computer hardware and software have been optimized for such mesh models.” The mesh conversion technique applies to the instant case, hence renders the claim feature obvious.)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to incorporate the invention of Fleishman because it provides techniques for converting a point-cloud to a mesh which is optimal for analysis by computer hardware and software. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for converting a point-cloud to a mesh which is optimal for analysis by computer hardware and software (Fleishman, para [0030]).
Claim 7 is rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog, LI, Wang and Fleishman as applied to claim 6, in further view of PUJADES et al. (US 20200058137 A1 -- hereinafter PUJADES)
With respect to claim 7, Ji as modified by Herzog, LI, Wang and Fleishman discloses The apparatus of claim 6, but does not appear to explicitly disclose wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to compute distances between elements of the first point-cloud and the second mesh and distances between the second point-cloud and the first mesh. However, this is taught in analogous art, PUJADES (e.g. para [0196], “… The distance Es2m (cf. Eq. 21) of the scan to the model mesh was measured by computing the Euclidean distance of each scan point to the mesh surface. ....” The method for measuring the distance between scan point to the model mesh applies to the instant case, hence renders the claim feature obvious.)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to incorporate the invention of PUJADES because it provides techniques for measuring distance from a point to a mesh which is applicable for calculating distance between two point-clouds. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for measuring distance from a point to a mesh which is applicable for calculating distance between two point-clouds (PUJADES, para [0196]).
Claim 8 is rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog, LI, Wang, Fleishman and PUJADES as applied to claim 7, in further view of SHARMA et al. (WO 2024188414 A1 -- hereinafter SHARMA)
With respect to claim 8, Ji as modified by Herzog, LI, Wang, Fleishman and PUJADES discloses The apparatus of claim 7, but does not appear to explicitly disclose wherein, when performing the semantic comparison of at least a portion of the first data set with at least a portion of the second data set, the at least one processing platform is further configured to compute an overall objective distance score between the first point-cloud and the second point-cloud based on the computed distances. However, this is taught in analogous art, SHARMA (e.g. para [0039], “… For example, a respective similarity score and/or a respective dissimilarity score can be obtained by calculating the point-cloud distance D (Oi, O2) between the aligned down-sampled point cloud model 50 of the object 10 and each of the database point cloud models 40. ....” The method for measuring the distance between two point-clouds applies to the instant case, hence renders the claim feature obvious.)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to incorporate the invention of SHARMA because it provides more advantageous techniques for comparing point cloud models. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing more advantageous techniques for comparing point cloud models (SHARMA, para [0053]).
Claims 9, 16, and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog, LI, Wang, Fleishman, PUJADES and SHARMA as applied to claims 8, 15, and 18 respectively, in further view of Schutt et al. (US 20230208880 A1 -- hereinafter Schutt)
With respect to claim 9 (Currently Amended), Ji as modified by Herzog, LI, Wang, Fleishman, PUJADES and SHARMA discloses The apparatus of claim 8, but does not appear to explicitly disclose wherein the overall objective distance score represents [[a]] the corresponding difference between the first executable code version of the software package and the second executable code version of the software package. However, this is taught in analogous art, Schutt (e.g. para [0029], “… In some embodiments, machine learning module 112 may be trained to identify graph edit distance thresholds that can be applied to an overall score to determine whether the difference between two software packages is substantial or not. ....” the difference between two software packages represents the corresponding difference between the executable code versions of the two software packages.)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to incorporate the invention of Schutt because it provides techniques for automatically analyzing software packages to apply security policies, to identify the degree of differences between compared software packages. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for automatically analyzing software packages to apply security policies, to identify the degree of differences between compared software packages (Schutt, para [0010]).
With respect to claim 16 (Currently Amended), it recites same features as claims 8 and 9, and is rejected for the same reason.
With respect to claim 19 (Currently Amended), it recites same features as claims 8 and 9, and is rejected for the same reason.
Claims 10-11, 17, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog, LI, Wang, Fleishman, PUJADES, SHARMA and Schutt as applied to claims 9, 16, and 19 respectively, in further view of Huang et al. (US 20200301968 A1 -- hereinafter Huang)
With respect to claim 10 (Previously presented), Ji as modified by Herzog, LI, Wang, Fleishman, PUJADES, SHARMA and Schutt discloses The apparatus of claim 9, but does not appear to explicitly disclose wherein the at least one processing platform is further configured to generate a scoring data structure wherein the overall objective distance score computed between the first executable code version of the software package and the second executable code version of the software package is stored in the scoring data structure. However, this is taught in analogous art, Huang (e.g. para [0097], “… The data processing system 102 can
store the second classification score in the scores 132 data structure for further processing.” Huang’s teaching renders the claim feature obvious)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to incorporate the invention of Huang because it provides techniques for storing intermediate result data for further processing. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for storing intermediate result data for further processing (Huang, para [0097]).
With respect to claim 11 (Previously presented), Ji as modified by Herzog, LI, Wang, Fleishman, PUJADES, SHARMA, Schutt and Huang discloses The apparatus of claim 10, Huang further disclose wherein one or more other overall objective distance scores computed between other executable code versions of the software package are stored in the scoring data structure (e.g. para [0097], “… The data processing system 102 can store the second classification score in the scores 132 data structure for further processing.” Para [0053], “Scores 132 can refer to a classification score of the application. Scores 132 can include a first classification score, second classification score, third classification score or combined classification score for an application. …” Huang’s teaching renders the claim feature obvious. For motivation to combine, please refer to office action regarding claim 10 above.)
With respect to claim 17 (Previously presented), it recites same features as claims 10 and 11, and is rejected for the same reason.
With respect to claim 20 (Previously presented), it recites same features as claims 10 and 11, and is rejected for the same reason.
Claim 12 is rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog, LI, Wang, Fleishman, PUJADES, SHARMA, Schutt and Huang as applied to claim 11, in further view of Salameh et al. (US 20230083161 A1 -- hereinafter Salameh)
With respect to claim 12, Ji as modified by Herzog, LI, Wang, Fleishman, PUJADES, SHARMA, Schutt and Huang discloses The apparatus of claim 11, but does not appear to explicitly disclose wherein, when generating the scoring data structure, the at least one processing platform is further configured to normalize the overall objective distance scores. However, this is taught in analogous art, Salameh (e.g. para [0044], “… As described above, the portion of the input data to which the one or more machine learning models may be applied may include information extracted or derived from the input data, such as by converting frames of video data into a data structure that represents the video frame content as an array or matrix of numeric values (e.g., values derived from grey scale levels, luminance, etc.). Additionally, the video frame data may be subjected to other processing prior to generating the data structure, such as normalization, down-sampling, scaling, or other processes.” Salameh’s teaching renders the claim feature obvious.)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to incorporate the invention of Salameh because it provides techniques for converting non-numeric matrix data into numeric matric data and normalizing the numeric data so it can be input into a computer and processed. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for converting non-numeric matrix data into numeric matrix data and normalizing the numeric data so it can be input into a computer and processed (Salameh, para [0026]).
Claim 13 is rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog, LI, Wang, Fleishman, PUJADES, SHARMA, Schutt, Huang and Salameh as applied to claim 12, in further view of FARRE et al. (EP 4114028 A1 -- hereinafter FARRE, please refer to the attached FOR reference copy)
With respect to claim 13 (Previously presented), Ji as modified by Herzog, LI, Wang, Fleishman, PUJADES, SHARMA, Schutt, Huang and Salameh discloses The apparatus of claim 12, but does not appear to explicitly disclose wherein, when generating the scoring data structure, the at least one processing platform is further configured to use a hyper-parameter threshold value to determine a criticality of an upgrade between executable code versions of the software package. However, this is taught in analogous art, FARRE (e.g. para [0077], “… For example a predetermined or dynamically determined threshold similarity criterion may
be an adjustable hyperparameter of trained content subsection boundary prediction ML model 460, used to predict the boundaries of content subsections. ....” FARRE’s teaching renders the claim feature obvious.)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to incorporate the invention of FARRE because it provides techniques for tuning hyperparameters of content subsection boundary prediction ML model 160/260/460 so as to improve its predictive performance. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for tuning hyperparameters of an ML model so as to improve its predictive performance (FARRE, para [0080]).
Claim 14 is rejected under 35 U.S.C. 103 as being unpatentable over Ji in view of Herzog, LI, Wang, Fleishman, PUJADES, SHARMA, Schutt, Huang, Salameh and FARRE as applied to claim 13, in further view of Abuelsaad et al. (US 20150293762 A1 -- hereinafter Abuelsaad)
With respect to claim 14 (Previously presented), Ji as modified by Herzog, LI, Wang, Fleishman, PUJADES, SHARMA, Schutt, Huang, Salameh and FARRE discloses The apparatus of claim 13, but does not appear to explicitly disclose wherein, when generating the scoring data structure, the at least one processing platform is further configured to categorize executable code version differences into color-coded bands to reflect the criticality of the upgrade between the executable code versions of the software package. However, this is taught in analogous art, Abuelsaad (e.g. para [0090], “… As an example, the recommendation may include presenting the set of program files with a color coding that is based on the probabilities.” Wherein the files read on version of the software package, probabilities read on criticality, the differences between program files are indicative of executable code versions of the program files. Abuelsaad’s teaching renders the claim feature obvious.)
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to incorporate the invention of Abuelsaad because it provides techniques for identifying program files within one or more programs that will likely require update to implement a proposed programming task. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for identifying program files within one or more programs that will likely require update to implement a proposed programming task (Abuelsaad, para [0008, 0090]).
Response to Arguments
Applicant's arguments with respect to 101 and art rejections filed 12/1/2025 have been fully considered but they are not persuasive.
At p8 seventh paragraph of the Remarks, Applicant argued that “the claims do not recite an abstract idea of a mental process, and even if one were to assume for purposes of argument only that the claims did recite an abstract idea, the claims clearly integrate any such abstract idea into a practical application in the field of computer technology (e.g., binary software package execution), in a manner that provides an improvement in computer technology.”
Examiner respectfully disagrees, because, as set forth in the office action above, the limitation “perform a semantic comparison …” of claim 1, is mental process, as human can manually perform a semantic comparison of two data sets that are indicative of executable code versions of software packages. Note that the process does not involve processing of executable code. The additional elements do not integrate the judicial exception into a practical application, and do not constitute an inventive concept.
At p8 eighth paragraph of the Remarks, Applicant argued that “Notwithstanding the foregoing traversal, the claims have been amended as described below to further clarify that the claimed subject matter was in the possession of Applicants at the time the application was made and does not recite an abstract idea of a mental process, and provides improvements in the field of computer technology. The claim amendments herein are not made for reasons relating to patentability, as the claims as originally presented are believed to recite patentable subject matter.”
Examiner respectfully disagrees, because, the amendments to claims, e.g. claim 1, are clarifying that the computed difference between the two data sets is indicative of a corresponding difference between the executable code versions, but the executable/binary code or the building process of the executable code is not actually involved in the data obtaining and difference computing processes. The amendments do not integrate the judicial exception into a practical application and do not constitute an inventive concept.
At p8 last to p10 first paragraphs of the Remarks, Applicant argued with respect to art rejections, these arguments are fully considered and are moot upon new ground of rejections made in the office action above.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. For example Tautschnig et al., US 10769250 B1 teaches Targeted Security Monitoring Using Semantic Behavioral Change Analysis.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Zengpu Wei whose telephone number is 571-270-1302. The examiner can normally be reached on Monday to Friday from 8:00AM to 5:00 PM.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Bradley Teets, can be reached on 571-272-3338. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/ZENGPU WEI/Examiner, Art Unit 2197