DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application is being examined under the pre-AIA first to invent provisions.
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 03/27/2023, 03/01/2024, and 01/07/2026 is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
Response to Arguments
101 Rejection Arguments
Applicant asserts:
Applicant asserts, on page 8-9, that the claim is viewed as a whole, this process is an integral part of a specific technical solution that improves the functionality of the computer itself. Applicant further states “This reduction from "hundreds of thousands of computations" to "several multiple of the number of components" constitutes a clear improvement to the computer's capability to perform policy effect predictions.”
Examiner response:
Examiner respectfully disagrees. Examiner uses BRI when interpreting the claims. Examiner interprets “accumulating[accumulate] a plurality of combinations of a parameter representing a branch condition and a branch probability in relation to one or more condition branch “components in a workflow as mere data gathering under MPEP 2106.05(g). Examiner further points to MPEP 2106.04(d), which notes that “adding insignificant extra-solution activity to the judicial exception” “did not integrate a judicial exception into a practical application.” Therefore, applicant’s arguments are not persuasive.
Applicant asserts:
Applicant asserts, on page 9-10, that the combination of elements in Claims 1, 5 and 9 provide technical improvements to the functioning of the computer itself by optimizing the computational architecture for workflow predictions. Applicant further states “This specific architecture "eliminates the requirements for prediction for each individual and consequently hundreds of thousands of computations." As a result, the "people count directing each service can be predicted with low computational complexity, which is several multiple of the number of components."”
Examiner response:
Examiner respectfully disagrees. Examiner uses BRI when interpreting the claims. Examiner interprets “accumulating[accumulate] a plurality of combinations of a parameter representing a branch condition and a branch probability in relation to one or more condition branch “components in a workflow as mere data gathering under MPEP 2106.05(g). Examiner further points to MPEP 2106.04(d), which notes that “adding insignificant extra-solution activity to the judicial exception” “did not integrate a judicial exception into a practical application.” Therefore, applicant’s arguments are not persuasive.
102 Rejection Arguments
Applicant asserts:
Applicant asserts, on page 11-12, that “Angelica does not appear to describe "accumulating[accumulate] a plurality of combinations of a parameter representing a branch condition and a branch probability in relation to one or more condition branch components in a workflow"”
Examiner response:
Examiner respectfully disagrees and notes that claims are interpreted using BRI. Examiner notes Angelica discloses that feature extraction as accumulating a plurality of combinations of a parameter (the assumed set of four features is a combination of a parameter). Examiner notes that features assumed can be seen in Table 1 which relates to “Categorical branch features” meaning it represents a branch condition. Examiner further notes that the feature vector are passed in a function/model to obtain a branch probability in relation to one or more condition branch components in a workflow as a probability that a branch is taken. The feature vector represents a branch probability by the result of a function/model it is applied to. Therefore, applicant’s arguments are not persuasive.
Applicant asserts:
Applicant asserts, on page 12-13, that “Angelica does not appear to describe "generating[generate], using the plurality of combinations accumulated, a model that predicts a branch probability corresponding to a parameter used when a particular condition branch component among the one or more condition branch components is used"”
Examiner response:
Examiner respectfully disagrees and notes that claims are interpreted using BRI. Examiner notes Angelica discloses that feature extraction is done to accumulate a plurality of combinations of a parameter (features vectors). Examiner notes that features assumed can be seen in Table 1 which relates to “Categorical branch features” meaning it represents a branch condition. Examiner further notes that the feature vector are passed in a function/model to obtain a branch probability in relation to one or more condition branch components in a workflow as a probability that a branch is taken. The feature vector represents a branch probability by the result of a function/model it is applied to. Examiner further points to Angelica Page 10 Last Paragraph; “Once the features have been collected, it is necessary to clean the training/prediction data, and make it suitable to be fed to a Machine Learning model” to show that the feature vectors are used to train/generate a model/prediction function to predict a branch probability. Therefore, applicant’s arguments are not persuasive.
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-12 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
In reference to claim 1:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a process
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“and generating, using the plurality of combinations accumulated, a model that predicts a branch probability corresponding to a parameter used when a particular condition branch component among the one or more condition branch components is used.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could generate a mental model using the plurality of combination accumulated to predict a branch probability.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
“A computer-implemented method for generating a predicting model comprising: accumulating a plurality of combinations of a parameter representing a branch condition and a branch probability in relation to one or more condition branch components in a workflow;” (insignificant extra-solution activity mere data gathering MPEP 2106.05(g))
The claim does not include additional elements that are integrated into a practical application.
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
“A computer-implemented method for generating a predicting model comprising: accumulating a plurality of combinations of a parameter representing a branch condition and a branch probability in relation to one or more condition branch components in a workflow;” (well-understood, routine, conventional MPEP 2106.05(d))
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
In reference to claim 2:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a process
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“The computer-implemented method according to claim 1, further comprising when the particular condition branch component receives an input of a first parameter, calculating a first branch probability representing an outputted value satisfying the received first parameter.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could calculate a first branch probability when the particular branch component receives an input of a first parameter.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
No
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
No
In reference to claim 3:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a process
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“and the calculating of the first branch probability calculates the first probability when the route to the particular condition branch component satisfies the route information.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could calculate the first probability when the route to the particular condition branch component satisfies the route information.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
“The computer-implemented method according to claim 2, wherein: the accumulating of the plurality of combinations accumulates the plurality combinations including the branch probability, the parameter, and route information representing a route passing through a plurality of the condition branch components in association with one another;” (insignificant extra-solution activity mere data gathering MPEP 2106.05(g))
The claim does not include additional elements that are integrated into a practical application.
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
“The computer-implemented method according to claim 2, wherein: the accumulating of the plurality of combinations accumulates the plurality combinations including the branch probability, the parameter, and route information representing a route passing through a plurality of the condition branch components in association with one another;” (well-understood, routine, conventional MPEP 2106.05(d))
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
In reference to claim 4:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a process
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“and the generating of the model generates, when a route to the particular condition branch component satisfies the route information, a model that predicts the branch probability and an influence value when the particular condition branch component is used.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could generate a mental model that predicts the branch probability and an influence value when the particular condition branch component is used.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
“The computer-implemented method according to claim 1, wherein: the accumulating of the plurality of combinations accumulates, in association with one another, the plurality of combinations including the branch probability, the parameter, and route information representing a route passing through the one or more condition branch components, an influence value when the one or more condition branch components included in the route information and one or more service executing component are used;” (insignificant extra-solution activity mere data gathering MPEP 2106.05(g))
The claim does not include additional elements that are integrated into a practical application.
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
“The computer-implemented method according to claim 1, wherein: the accumulating of the plurality of combinations accumulates, in association with one another, the plurality of combinations including the branch probability, the parameter, and route information representing a route passing through the one or more condition branch components, an influence value when the one or more condition branch components included in the route information and one or more service executing component are used;” (well-understood, routine, conventional MPEP 2106.05(d))
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
In reference to claim 5:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a machine
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“and generate, using the plurality of combinations accumulated, a model that predicts a branch probability corresponding to a parameter used when a particular condition branch component among the one or more condition branch components is used.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could generate a mental model using the plurality of combination accumulated to predict a branch probability.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
“An information processing apparatus comprising: a memory; and a processor coupled to the memory,” is merely reciting the words "apply it" (or an equivalent) with the judicial exception, or merely including instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea (MPEP 2106.05(f)).
“the processor being configured to: accumulate a plurality of combinations of a parameter representing a branch condition and a branch probability in relation to one or more condition branch components in a workflow;” (insignificant extra-solution activity mere data gathering MPEP 2106.05(g))
The claim does not include additional elements that are integrated into a practical application.
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
“An information processing apparatus comprising: a memory; and a processor coupled to the memory,” is merely reciting the words "apply it" (or an equivalent) with the judicial exception, or merely including instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea (MPEP 2106.05(f)).
“the processor being configured to: accumulate a plurality of combinations of a parameter representing a branch condition and a branch probability in relation to one or more condition branch components in a workflow;” (well-understood, routine, conventional MPEP 2106.05(d))
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
In reference to claim 6:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a machine
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“The information processing apparatus according to claim 5, wherein the processor is further configured to when the particular condition branch component receives an input of a first parameter, calculate a first branch probability representing an outputted value satisfying the received first parameter.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could calculate a first branch probability when the particular branch component receives an input of a first parameter.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
No
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
No
In reference to claim 7:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a machine
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“and in the calculating of the first branch probability, calculate the first probability when the route to-he particular condition branch component satisfies the route information.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could calculate the first probability when the route to the particular condition branch component satisfies the route information.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
“The information processing apparatus according to claim 6, wherein the processor is further configured to: in the accumulating of the plurality of combinations, accumulate the plurality combination including the branch probability, the parameter, and route information representing a route passing through a plurality of the condition branch components in association with one another;” (insignificant extra-solution activity mere data gathering MPEP 2106.05(g))
The claim does not include additional elements that are integrated into a practical application.
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
“The information processing apparatus according to claim 6, wherein the processor is further configured to: in the accumulating of the plurality of combinations, accumulate the plurality combination including the branch probability, the parameter, and route information representing a route passing through a plurality of the condition branch components in association with one another;” (well-understood, routine, conventional MPEP 2106.05(d))
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
In reference to claim 8:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a machine
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“and in the generating of the model, generate, when a route to the particular condition branch component satisfies the route information, a model that predicts the branch probability and an influence value when the particular condition branch component is used.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could generate a mental model that predicts the branch probability and an influence value when the particular condition branch component is used.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
“The information processing apparatus according to claim 5, wherein the processor is further configured to: in the accumulating of the plurality of combinations, accumulate, in association with one another, the plurality is of combinations including the branch probability, the parameter, and route information representing a route passing through the one or more condition branch components, an influence value when the one or more condition branch components included in the route information and one or more service executing component are used;” (insignificant extra-solution activity mere data gathering MPEP 2106.05(g))
The claim does not include additional elements that are integrated into a practical application.
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
“The information processing apparatus according to claim 5, wherein the processor is further configured to: in the accumulating of the plurality of combinations, accumulate, in association with one another, the plurality is of combinations including the branch probability, the parameter, and route information representing a route passing through the one or more condition branch components, an influence value when the one or more condition branch components included in the route information and one or more service executing component are used;” (well-understood, routine, conventional MPEP 2106.05(d))
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
In reference to claim 9:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a manufacture
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“and generating, using the plurality of combinations io accumulated, a model that predicts a branch probability corresponding to a parameter used when a particular condition branch component among tie one or more condition branch components is used.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could generate a mental model using the plurality of combination accumulated to predict a branch probability.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
“A non-transitory computer-readable recording medium having stored therein a predicting model generating program for causing a computer to execute a process comprising: accumulating a plurality of combinations of a parameter representing a branch condition and a branch probability in relation to one or more condition branch components in a workflow;” (insignificant extra-solution activity mere data gathering MPEP 2106.05(g))
The claim does not include additional elements that are integrated into a practical application.
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
“A non-transitory computer-readable recording medium having stored therein a predicting model generating program for causing a computer to execute a process comprising: accumulating a plurality of combinations of a parameter representing a branch condition and a branch probability in relation to one or more condition branch components in a workflow;” (well-understood, routine, conventional MPEP 2106.05(d))
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
In reference to claim 10:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a manufacture
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“The non-transitory computer-readable recording medium according to claim 9, wherein the process further comprises when the particular condition branch component receives an input of a first parameter, calculating a first branch probability representing an outputted value satisfying the received first parameter.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could calculate a first branch probability when the particular branch component receives an input of a first parameter.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
No
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
No
In reference to claim 11:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a manufacture
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“and in the calculating of the first branch probability, calculating the first probability when the route to the particular condition branch component satisfies the route to information.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could calculate the first probability when the route to the particular condition branch component satisfies the route information.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
“The non-transitory computer-readable recording medium according to claim 10, wherein the process further comprises in the accumulating of the plurality of combinations, accumulating the plurality combination including the branch probability, the parameter, and route information representing a route passing through a plurality of the condition branch components in association with one another;” (insignificant extra-solution activity mere data gathering MPEP 2106.05(g))
The claim does not include additional elements that are integrated into a practical application.
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
“The non-transitory computer-readable recording medium according to claim 10, wherein the process further comprises in the accumulating of the plurality of combinations, accumulating the plurality combination including the branch probability, the parameter, and route information representing a route passing through a plurality of the condition branch components in association with one another;” (well-understood, routine, conventional MPEP 2106.05(d))
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
In reference to claim 12:
Step 1 - Is the claim to a process, machine, manufacture or composition of matter?
Yes, the claim is directed to a manufacture
Step 2A Prong 1 - Does the claim recite an abstract idea, law of nature, or natural phenomenon?
“and in the generating of the model, generating, when a route to the particular condition branch component satisfies the route information, a model that predicts the branch probability and an influence value when the particular condition branch component is used.” which is an abstract idea because it is directed to a mental process, an observation, evaluation, judgement, or opinion. The limitation as drafted, and under a broadest reasonable interpretation, can be performed in the human mind, or by a human using a pen and paper (MPEP 2106.04(a)(2)(Ill)(c)). For example, a person could generate a mental model that predicts the branch probability and an influence value when the particular condition branch component is used.
Step 2A Prong 2 - Does the claim recite additional elements that integrate the judicial exception into a practical application?
“The non-transitory computer-readable recording medium according to claim 9, wherein the process further comprises: in the accumulating of the plurality of combinations, accumulating, in association with one another, the plurality of combinations including the branch probability, the parameter, and route information representing a route passing through the one or more condition branch components, an influence value when the one or more condition branch components included in the route information and one or more service executing component are used;” (insignificant extra-solution activity mere data gathering MPEP 2106.05(g))
The claim does not include additional elements that are integrated into a practical application.
Step 2B - Does the claim recite additional elements that amount to significantly more than the judicial exception?
“The non-transitory computer-readable recording medium according to claim 9, wherein the process further comprises: in the accumulating of the plurality of combinations, accumulating, in association with one another, the plurality of combinations including the branch probability, the parameter, and route information representing a route passing through the one or more condition branch components, an influence value when the one or more condition branch components included in the route information and one or more service executing component are used;” (well-understood, routine, conventional MPEP 2106.05(d))
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Claim Rejections - 35 USC § 102
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 (i.e., changing from AIA to pre-AIA ) 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.
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.
Claim(s) 1-3, 5-7, and 9-11 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Angelica Aparecida Moreira et al; “VESPA: Static Profiling for Binary Optimization” (hereinafter “Angelica”).
Regarding claim 1, Angelica anticipates A computer-implemented method for generating a predicting model comprising: accumulating a plurality of combinations of a parameter (Angelica Page 6 Paragraph 5; "Prediction starts with feature extraction. Features are mined from the target program syntax." Angelica Page 12 Paragraph 3; "the combination of those learnable parameters and the activation function will determine the success of the probability predictor" Examiner notes that accumulating (feature extraction) a plurality of combinations of a parameter (combination of those learnable parameters))
representing a branch condition and a branch probability in relation to one or more condition branch components in a workflow; (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Examiner notes that a parameter representing a branch condition (feature vector) and a branch probability (probability that a branch is taken) in relation to one or more condition branch components in a workflow (vector is passed into prediction function to generate probability))
and generating, using the plurality of combinations accumulated, a model that predicts a branch probability corresponding to a parameter used when a particular condition branch component among the one or more condition branch components is used. (Angelica Page 2 Paragraph 3; "During training, we collect an assortment of static features from programs." Angelica Page 6 Paragraph 4; "The first, "trainings", consists in building the model that approximates the behavior of programs." Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that generating a model that predicts using the plurality of combinations accumulated is training using the features; model predicts a branch probability (branch predictions) corresponding to a parameter used (path traversed) when a particular condition component among the one or more condition branch components is used (given an execution of the program))
Regarding claim 2, Angelica anticipates The computer-implemented method according to claim 1, further comprising when the particular condition branch component receives an input of a first parameter, calculating a first branch probability representing an outputted value satisfying the received first parameter. (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Examiner notes that when the particular condition branch component receives an input of a first parameter (feature vector), calculating a first branch probability (applying this function to get probability that a branch is taken) representing an outputted value satisfying the received first parameter (vector is passed to a prediction function to get output/probability))
Regarding claim 3, Angelica anticipates The computer-implemented method according to claim 2, wherein: the accumulating of the plurality of combinations accumulates the plurality combinations including the branch probability, the parameter, and route information representing a route passing through a plurality of the condition branch components in association with one another; (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that plurality of combinations includes the branch probability (probability a branch is taken), the parameter (feature vector), and a route information representing a route passing through a plurality of condition branch components (most traversed paths of a program) in association with one another)
and the calculating of the first branch probability calculates the first probability when the route to the particular condition branch component satisfies the route information. (Angelica Page 6 Paragraph 5; "Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Examiner notes that first probability is calculated (probability that a branch is taken) when the route to the particular condition branch component satisfies the route information)
Regarding claim 5, Angelica anticipates An information processing apparatus comprising: a memory; and a processor coupled to the memory, (Angelica Page 16 Paragraph 2; “Experiments were executed on a dedicated server featuring an Intel Xeon E5-2620 CPU at 2.00GHz, with 16GB RAM” Examiner notes that a processor (CPU) is coupled to memory (RAM))
the processor being configured to: accumulate a plurality of combinations of a parameter (Angelica Page 6 Paragraph 5; "Prediction starts with feature extraction. Features are mined from the target program syntax." Angelica Page 12 Paragraph 3; "the combination of those learnable parameters and the activation function will determine the success of the probability predictor" Examiner notes that accumulating (feature extraction) a plurality of combinations of a parameter (combination of those learnable parameters))
representing a branch condition and a branch probability in relation to one or more condition branch components in a workflow; (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Examiner notes that a parameter representing a branch condition (feature vector) and a branch probability (probability that a branch is taken) in relation to one or more condition branch components in a workflow (vector is passed into prediction function to generate probability))
and generate, using the plurality of combinations accumulated, a model that predicts a branch probability corresponding to a parameter used when a particular condition branch component among the one or more condition branch components is used. (Angelica Page 2 Paragraph 3; "During training, we collect an assortment of static features from programs." Angelica Page 6 Paragraph 4; "The first, "trainings", consists in building the model that approximates the behavior of programs." Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that generating a model that predicts using the plurality of combinations accumulated is training using the features; model predicts a branch probability (branch predictions) corresponding to a parameter used (path traversed) when a particular condition component among the one or more condition branch components is used (given an execution of the program))
Regarding claim 6, Angelica anticipates The information processing apparatus according to claim 5, wherein the processor is further configured to when the particular condition branch component receives an input of a first parameter, calculate a first branch probability representing an outputted value satisfying the received first parameter. (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Examiner notes that when the particular condition branch component receives an input of a first parameter (feature vector), calculating a first branch probability (applying this function to get probability that a branch is taken) representing an outputted value satisfying the received first parameter (vector is passed to a prediction function to get output/probability))
Regarding claim 7, Angelica anticipates The information processing apparatus according to claim 6, wherein the processor is further configured to: in the accumulating of the plurality of combinations, accumulate the plurality combination including the branch probability, the parameter, and route information representing a route passing through a plurality of the condition branch components in association with one another; (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that plurality of combinations includes the branch probability (probability a branch is taken), the parameter (feature vector), and a route information representing a route passing through a plurality of condition branch components (most traversed paths of a program) in association with one another)
and the calculating of the first branch probability calculates the first probability when the route to the particular condition branch component satisfies the route information. (Angelica Page 6 Paragraph 5; "Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Examiner notes that first probability is calculated (probability that a branch is taken) when the route to the particular condition branch component satisfies the route information)
Regarding claim 9 , Angelica anticipates A non-transitory computer-readable recording medium having stored therein a predicting model generating program for causing a computer to execute a process comprising: accumulating a plurality of combinations of a parameter (Angelica Page 6 Paragraph 5; "Prediction starts with feature extraction. Features are mined from the target program syntax." Angelica Page 12 Paragraph 3; "the combination of those learnable parameters and the activation function will determine the success of the probability predictor" Examiner notes that accumulating (feature extraction) a plurality of combinations of a parameter (combination of those learnable parameters))
representing a branch condition and a branch probability in relation to one or more condition branch components in a workflow; (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Examiner notes that a parameter representing a branch condition (feature vector) and a branch probability (probability that a branch is taken) in relation to one or more condition branch components in a workflow (vector is passed into prediction function to generate probability))
and generating, using the plurality of combinations io accumulated, a model that predicts a branch probability corresponding to a parameter used when a particular condition branch component among tie one or more condition branch components is used. (Angelica Page 2 Paragraph 3; "During training, we collect an assortment of static features from programs." Angelica Page 6 Paragraph 4; "The first, "trainings", consists in building the model that approximates the behavior of programs." Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that generating a model that predicts using the plurality of combinations accumulated is training using the features; model predicts a branch probability (branch predictions) corresponding to a parameter used (path traversed) when a particular condition component among the one or more condition branch components is used (given an execution of the program))
Regarding claim 10, Angelica anticipates The non-transitory computer-readable recording medium according to claim 9, wherein the process further comprises when the particular condition branch component receives an input of a first parameter, calculating a first branch probability representing an outputted value satisfying the received first parameter. (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Examiner notes that when the particular condition branch component receives an input of a first parameter (feature vector), calculating a first branch probability (applying this function to get probability that a branch is taken) representing an outputted value satisfying the received first parameter (vector is passed to a prediction function to get output/probability))
Regarding claim 11, Angelica anticipates The non-transitory computer-readable recording medium according to claim 10, wherein the process further comprises in the accumulating of the plurality of combinations, accumulating the plurality combination including the branch probability, the parameter, and route information representing a route passing through a plurality of the condition branch components in association with one another; (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that plurality of combinations includes the branch probability (probability a branch is taken), the parameter (feature vector), and a route information representing a route passing through a plurality of condition branch components (most traversed paths of a program) in association with one another)
and in the calculating of the first branch probability, calculating the first probability when the route to the particular condition branch component satisfies the route to information. (Angelica Page 6 Paragraph 5; "Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Examiner notes that first probability is calculated (probability that a branch is taken) when the route to the particular condition branch component satisfies the route information)
Claim Rejections - 35 USC § 103
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 (i.e., changing from AIA to pre-AIA ) 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.
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, 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(s) 4, 8, and 12 are rejected under 35 U.S.C. 103 as being unpatentable over Angelica Aparecida Moreira et al; “VESPA: Static Profiling for Binary Optimization” (hereinafter “Angelica”) in view of Naoaki Yokoi et al; US 20200233836 A1 (hereinafter “Naoaki”).
Regarding claim 4, Angelica teaches The computer-implemented method according to claim 1, wherein: the accumulating of the plurality of combinations accumulates, in association with one another, the plurality of combinations including the branch probability, the parameter, and route information representing a route passing through the one or more condition branch components, [an influence value] when the one or more condition branch components included in the route information and one or more service executing component are used; (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that plurality of combinations includes the branch probability (probability a branch is taken), the parameter (feature vector), and a route information representing a route passing through a plurality of condition branch components (most traversed paths of a program) when the one or more condition branch components included in the route information and one or more service executing components are used (given an execution of the program))
and the generating of the model generates, when a route to the particular condition branch component satisfies the route information, a model that predicts the branch probability [and an influence value] when the particular condition branch component is used. (Angelica Page 6 Paragraph 4; "The first, "trainings", consists in building the model that approximates the behavior of programs."
Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that generating a model that predicts is training/building a model that predicts when a route to the particular condition branch component satisfies the route information; model predicts a branch probability (branch predictions) when a particular condition component is used (given an execution of the program))
Angelica does not teach accumulating an influence value
Predicting an influence value
However, Naoaki does teach accumulating an influence value (Naoaki Paragraph 0043; "The contribution calculation unit 111 calculates a contribution (an influence degree) indicating the strength of the influence of the feature values on a prediction result for the feature values included in the input data." Examiner notes that an influence value accumulating plurality of combinations is calculating for an influence degree)
Predicting an influence value (Naoaki Paragraph 0043; "The contribution calculation unit 111 calculates a contribution (an influence degree) indicating the strength of the influence of the feature values on a prediction result for the feature values included in the input data." Examiner notes that model (contribution calculation unit) predicts/calculates the influence value (influence degree))
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine Angelica and Naoaki. Angelica teaches static profiling for binary optimization. Naoaki teaches calculating an influence value. One of ordinary skill would have motivation to combine Angelica and Naoaki to use influence values to indicate the strength of the influence of the feature values on a prediction result “The contribution calculation unit 111 calculates a contribution (an influence degree) indicating the strength of the influence of the feature values on a prediction result for the feature values included in the input data.” (Naoaki Paragraph 0043).
Regarding claim 8, Angelica teaches The information processing apparatus according to claim 5, wherein the processor is further configured to: in the accumulating of the plurality of combinations, accumulate, in association with one another, the plurality is of combinations including the branch probability, the parameter, and route information representing a route passing through the one or more condition branch components, [an influence value] when the one or more condition branch components included in the route information and one or more service executing component are used; (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that plurality of combinations includes the branch probability (probability a branch is taken), the parameter (feature vector), and a route information representing a route passing through a plurality of condition branch components (most traversed paths of a program) when the one or more condition branch components included in the route information and one or more service executing components are used (given an execution of the program))
and in the generating of the model, generate, when a route to the particular condition branch component satisfies the route information, a model that predicts the branch probability [and an influence value] when the particular condition branch component is used. (Angelica Page 6 Paragraph 4; "The first, "trainings", consists in building the model that approximates the behavior of programs."
Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that generating a model that predicts is training/building a model that predicts when a route to the particular condition branch component satisfies the route information; model predicts a branch probability (branch predictions) when a particular condition component is used (given an execution of the program))
Angelica does not teach accumulating an influence value
Predicting an influence value
However, Naoaki does teach accumulating an influence value (Naoaki Paragraph 0043; "The contribution calculation unit 111 calculates a contribution (an influence degree) indicating the strength of the influence of the feature values on a prediction result for the feature values included in the input data." Examiner notes that an influence value accumulating plurality of combinations is calculating for an influence degree)
Predicting an influence value (Naoaki Paragraph 0043; "The contribution calculation unit 111 calculates a contribution (an influence degree) indicating the strength of the influence of the feature values on a prediction result for the feature values included in the input data." Examiner notes that model (contribution calculation unit) predicts/calculates the influence value (influence degree))
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine Angelica and Naoaki. Angelica teaches static profiling for binary optimization. Naoaki teaches calculating an influence value. One of ordinary skill would have motivation to combine Angelica and Naoaki to use influence values to indicate the strength of the influence of the feature values on a prediction result “The contribution calculation unit 111 calculates a contribution (an influence degree) indicating the strength of the influence of the feature values on a prediction result for the feature values included in the input data.” (Naoaki Paragraph 0043).
Regarding claim 12, Angelica teaches The non-transitory computer-readable recording medium according to claim 9, wherein the process further comprises: in the accumulating of the plurality of combinations, accumulating, in association with one another, the plurality of combinations including the branch probability, the parameter, and route information representing a route passing through the one or more condition branch components, [an influence value] when the one or more condition branch components included in the route information and one or more service executing component are used; (Angelica Page 6 Paragraph 5; "Once features are extracted, they are arranged into a feature vector, which Figure 4(c) shows. Said vector is passed to a prediction function. The value that results from applying this function onto the feature vector is the probability that a branch is taken. Figure 4(d) shows a very simple linear predictor." Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that plurality of combinations includes the branch probability (probability a branch is taken), the parameter (feature vector), and a route information representing a route passing through a plurality of condition branch components (most traversed paths of a program) when the one or more condition branch components included in the route information and one or more service executing components are used (given an execution of the program))
and in the generating of the model, generating, when a route to the particular condition branch component satisfies the route information, a model that predicts the branch probability [and an influence value] when the particular condition branch component is used. (Angelica Page 6 Paragraph 4; "The first, "trainings", consists in building the model that approximates the behavior of programs."
Angelica Page 13 Paragraph 5; "Figure 6(a) shows branch predictions produced by an oracle for the program in Figure 1(a). An oracle is an optimal predictor. In other words, given an execution of the program, it predicts as taken the most traversed paths of a program." Examiner notes that generating a model that predicts is training/building a model that predicts when a route to the particular condition branch component satisfies the route information; model predicts a branch probability (branch predictions) when a particular condition component is used (given an execution of the program))
Angelica does not teach accumulating an influence value
Predicting an influence value
However, Naoaki does teach accumulating an influence value (Naoaki Paragraph 0043; "The contribution calculation unit 111 calculates a contribution (an influence degree) indicating the strength of the influence of the feature values on a prediction result for the feature values included in the input data." Examiner notes that an influence value accumulating plurality of combinations is calculating for an influence degree)
Predicting an influence value (Naoaki Paragraph 0043; "The contribution calculation unit 111 calculates a contribution (an influence degree) indicating the strength of the influence of the feature values on a prediction result for the feature values included in the input data." Examiner notes that model (contribution calculation unit) predicts/calculates the influence value (influence degree))
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine Angelica and Naoaki. Angelica teaches static profiling for binary optimization. Naoaki teaches calculating an influence value. One of ordinary skill would have motivation to combine Angelica and Naoaki to use influence values to indicate the strength of the influence of the feature values on a prediction result “The contribution calculation unit 111 calculates a contribution (an influence degree) indicating the strength of the influence of the feature values on a prediction result for the feature values included in the input data.” (Naoaki Paragraph 0043).
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to DANIEL DUC TRAN whose telephone number is (571)272-6870. The examiner can normally be reached Mon-Fri 8:00-5:00 EST.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Viker Lamardo can be reached at (571) 270-5871. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/D.D.T./Examiner, Art Unit 2147
/ERIC NILSSON/Primary Examiner, Art Unit 2151