The Rolls Building
7 Rolls Buildings
Fetter LaneLondon EC4A 1NL
Before :
THE HON. MR JUSTICE BIRSS
- - - - - - - - - - - - - - - - - - - - -
Between :
Adaptive Spectrum and Signal Alignment Inc Claimant
- and -
British Telecommunications PLC Defendant
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Iain Purvis QC and Joe Delaney (instructed by Wragge Lawrence Graham & Co LLP) for the Claimant
Roger Wyand QC and Hugo Cuddigan (instructed by Bird & Bird LLP) for the Defendant
Hearing dates: 13th, 14th November 2014
- - - - - - - - - - - - - - - - - - - - -
Judgment
Mr Justice Birss :
Topic | Paragraphs |
Introduction | 1 |
Technical background | 5 |
The issues | 6 |
The 790 patent | 12 |
Claim construction | 18 |
The NGA Equation system | 36 |
Does the NGA Equation system infringe? | 50 |
The Proposed Further NGA Equation system | 80 |
Abuse of process | 83 |
Conclusion | 96 |
Annex |
Introduction
In this action the defendant (BT) seeks a declaration of non-infringement against the claimant (ASSIA) concerning ASSIA’s patent EP (UK) 1,869,790. That patent is entitled “DSL state and line profile control”. It has an earliest claimed priority date of 3rd March 2005, a filing date of 28th February 2006 and a date of grant of 23rd May 2012. ASSIA denies that the declaration should be granted.
The case follows on from the trial I heard in autumn 2013 leading to a judgment on 3rd December 2013 [2013] EWHC 3768 (Pat). The conclusion was that BT’s broadband access network called Next Generation Access (NGA) infringed the 790 patent, which was valid. That case also concerned two other broadband access networks of BT and another patent but they are not germane to this current hearing. BT appealed the issue of infringement of 790 but the Court of Appeal ([2014] EWCA Civ 1462) dismissed the appeal in relation to 790.
The circumstances in which this matter arises are as follows. Once BT saw the trial judgment finding that the NGA system infringed 790, they changed the system. The point of the change was to seek to render it non-infringing. The change involves replacing loop software with an equation. BT contended that the changed NGA system using the equation did not infringe. Since then (December 2013) BT has used the changed system. ASSIA did not agree. ASSIA contends the changed system does infringe. I gave directions for the resolution of this issue. This hearing is the result. By the time the matter came before me no further witness statements or experts reports were needed from either party. Before the court is a document called the “Workaround Product and Process Description” which describes the changed NGA system and is signed with a statement of truth by Mr Croot, the relevant BT engineer. Also before the court are various statements of case from each side articulating their cases why the changed system does or does not infringe. I will refer to the changed system which is the main focus of this case as the “NGA Equation system”.
In addition BT advanced a further proposal and contended that even if the NGA Equation system infringed, this further proposed system would not. So there are two systems before the court, the NGA Equation system itself and what I will call the “Proposed Further NGA Equation system”.
Technical background
A detailed exposition of the technical background was set out in the trial judgment at paragraphs 16-45. In the Court of Appeal Floyd LJ summarised the relevant background in paragraphs 4-12. Neither side criticised either summary. I will not extend the length of this judgment by inserting them. This judgment will assume familiarity with the terminology used in those judgments. The issues
The main issue is whether the NGA Equation system infringes claims 1 and 13. ASSIA pleaded infringement of both claims 1 and 13. At one stage BT suggested a case on claim 13 was not pleaded but I find that it was.
The issue developed as follows. The NGA system was found to infringe because the software includes the Cap Level table which was found to be a profile state transition matrix within claim 1 and because the system uses the Cap Level table to select a
target profile in a loop routine, running down the profiles until the relevant criterion is satisfied. That way the correct target profile is found. In the NGA Equation system the Cap Level table still remains but the table is not used in a loop routine. The loop has been replaced by an equation which, when computed, produces a single answer which identifies the cap level of the right target profile. So, contended BT after trial, there is no use of a profile state transition matrix and no selection of one of a plurality of target profiles from that matrix.
ASSIA’s case is as follows. It pointed to the existence of another table used in the NGA system called the Service Profile Table. The Service Profile Table is a table consisting of an entry for all the profiles in the system identifying a file name containing the details of the profile parameters, indexed by the upstream and downstream cap level and interleaving level. When the controller has chosen a profile, it sends the filename to the DSLAM. The DSLAM uses the filename to extract the details of the profile needed in order to configure the line in question.
ASSIA contended that the Service Profile Table’s existence or at least its significance only emerged after trial. ASSIA argues now that the Service Profile Table is a profile state transition matrix which satisfies all the requirements of the claim. It also argues that although it is true that the equation no longer loops through the Cap Level table to select a profile, by using the software the controller still identifies a target profile by reference to its cap level. The controller then selects the target profile in the Service Profile Table using the cap level and the claim is satisfied.
BT disputes that the existence or significance of the Service Profile Table only emerged after trial. It also denies that the Service Profile Table is a profile state transition matrix within the claim and denies that the NGA Equation system operates in accordance with the claims.
A second issue arises about abuse of process. I will address that below once the main issue has been resolved.
The 790 patent
The judgments at trial and on appeal address the 790 patent and the issues of claim construction which arose. I will start by borrowing from the judgment of Floyd LJ:
The specification of 790 is entitled "DSL state and line profile control". The invention is said to relate to managing line profiles in a DSL system. An example of a line profile is set out at [0003], identifying, amongst other things, maximum and minimum upstream and downstream data rates as controllable profile parameters. At [0004] it is explained that operators currently use these profiles in a simple manner to control only an individual line's data rate, and perhaps forward error correction margin. These were, therefore, often controlled manually, thereby causing that line to remain in the same profile until maintenance personnel intervened to set a new profile, perhaps in response to a customer request for a faster service. Even when a line is permitted to change profile automatically, only a few transitions are considered. Thus the specification explains at [0006] that:
"Systems, methods and techniques that permit implementation of a wide variety of line profiles and transitions between such profiles automatically and with ease in communication systems such as DSL systems would represent a significant advancement in the art. In particular, prioritization and implementation of transition options in the communication system would represent a considerable advancement in the field of DSL service rates and associated ranges."
Having thus set out its overall objective, the patent then sets out two aspects of the invention, along the lines of the independent claims. The claims refer to three concepts which are important: a "state transition matrix", "priority" and "feasibility". An understanding of these can be gleaned from the specification at [0043] to [0048]. The judge summarised them in this way:
The patent uses two concepts which are key to the method of selecting profiles it discloses. These are priority and feasibility. Neither expression is a term of art and the skilled reader's understanding of them would come from reading the patent itself. Essentially the idea is that the system will extract out from a set of possible profiles which a line could adopt, a set of feasible profiles. That is a set of profiles which would provide acceptable operation of the line in the given circumstances. The set of possible profiles is divided into those which are feasible and those which are infeasible. This still presents a problem since the system has to have a means for selecting a particular profile to use from the group of profiles which are determined to be feasible. This is the point at which the priority concept plays a part. The possible profile transitions have an allocated priority which is independent of line conditions. It is an inherent property of each transition from a given profile to each target profile. The transition to a feasible profile with the highest priority is the one which is selected. The DSL line is then operated using this profile.
To carry out the method disclosed, the patent describes the use of a profile state transition matrix. The profile state transition matrix is a matrix which records the state transitions which are allowed and contains the priority of each possible transition. An example is matrix T in figure 4 as follows:
In this matrix each column relates to a given starting profile. So if the current profile for the DSL line in question is profile 1, the first column is the relevant column to use. If the current profile was profile 2, the second column would be the relevant one, and so on. Thus although T is a matrix, when one is considering a given current profile the data is really just a single column of values, i.e. a list. The numbers in the list represent the target profiles. Thus starting with profile 1 as the current profile, profile 2 has the highest priority since it is at the top of the list. Profile 6 has the next priority, then profile 1 itself and then profile 5. The presence of an entry for the current profile in the list shows that this arrangement would prioritise changing to profiles 2 or 6 (if they were feasible) ahead of staying put at profile 1. On the other hand if profiles 2, 6 and the current profile 1 are found not to be feasible but profile 5 is feasible then profile 5 should be selected."
In other words the profiles available to the DSL management system can be thought of in a hierarchy with three levels. First, the widest set is the set of all profiles a line is capable of operating with in any circumstances. In figure 4 of the patent the top left hand figure shows eight profiles which the line is capable of using. Second, there is a narrower set of “possible” profile transitions. In figure 4 there are four profiles to which the line can be transitioned starting from profile 1 (1, 2, 5 and 6). Keeping the line at profile 1 counts as a transition from 1 to 1. The possible transitions exist a priori and independently of line conditions. Although looked at overall the line is capable of being run in eight profiles, starting from profile 1 only four are ever possible. The transitions to the other profiles are impossible starting from profile 1. Third is the narrowest set, which is in turn a sub-set of the possible profiles. It is the set of feasible profiles. It may be that because of line conditions only some possible transitions are actually feasible.
From looking at the profile state transition matrices depicted in figure 4 (T2 and T) one can see which profiles are possible and impossible and the priority assigned to them. Feasibility is not shown in the matrices because that depends on line conditions.
As Floyd LJ said in paragraph 15 of his judgment, the patent explains feasibility a little further at [0052]:
“[0052] Knowing the prioritization of states is not sufficient in all embodiments of the present invention. In some embodiments, to assist in determining prioritization to states/profile, the feasibility of available states is evaluated and, in some cases, quantified. For example, for any line of interest in one embodiment, the information in the transition matrix T and current state is always available. Because priorities are already specified in T, a controller such as a DSL optimizer simply needs to examine the feasibility of candidate transitions and choose the feasible next state with highest priority (the state/profile with the lowest priority may be deemed to be feasible at any time without examination). As will be appreciated by those skilled in the art, feasibility may be determined in different ways. The "best state" and "best line profile" or "best available line profile" mean the state and/or line profile that is both feasible and possesses the highest priority. In cases where a "presumption of innocence" is used, as in some of the embodiments of the present invention the best state and /or line profiles that has not been deemed infeasible and possesses the highest priority.”
As Floyd LJ then explained in paragraphs 16 and 17, the patent describes how to perform a feasibility test using two types of operational data as inputs: reported and estimated data. Reported data tends to be more complete than estimated data, which can suffer from errors. On the other hand estimated data is guaranteed to be available since it is generated by the controller, while reported data may not be. Feasibility is a binary decision taken by the controller: a profile is determined to be feasible or infeasible. In practice, based on the reported/estimated data, the controller applies a set of conditions, which it calls sub-rules, and then an overall rule to determine feasibility.
As Floyd LJ stated in paragraph 20, the overall operation of the method of the invention is shown in the flow chart in Figure 6 of the patent, which is reproduced in his judgment.
Claim construction
The principles applicable to claim construction were not in dispute. The key authorities are Kirin Amgen v HMR [2004] UKHL 46 and Virgin Atlantic Airways vPremium Aircraft Interiors [2009] EWCA Civ 1062.
Claims 1 and 13 are set out in the Annex. Some of the points in issue at the trial were not challenged in the Court of Appeal and some were. At least one new point arises on this application. It is convenient to run through all the various points on construction of claim 1 which have arisen before or arise now in order to orient oneself properly with respect to the claim.
A line profile in the 790 patent is a set of configuration parameters and a DSL controller of claim 1 must be distinct from the modem pair (see trial judgment paragraphs 202-205 and 206-208). Although debated at trial, neither point was argued on appeal.
The issue I have to decide involves looking again at the profile state transition matrix. The trial judgment rejected the claimant’s reverse engineering argument that the claim covered a system with no actual profile state transition matrix implemented in the hardware or software but for which a profile state transition matrix could be derived (judgment 209-215). Given the issues arising now, paragraph 214 of the trial judgment is worth repeating:
I reject the claimant's submission on construction. The skilled reader would see that using an actual profile state transition matrix is at the heart of the disclosure and is at the heart of the claim. The fact that the profile state transition matrix, as well as the various sub-rules, threshold tables and overall rule, can be implemented in hardware or software or a combination of both does not mean that they can be ignored. Nor does paragraph [0132] mean one can ignore the method by which the system actually operates. The invention claimed in claim 1 is a specific method which works in a particular way. How it works is important. The fact that two different methods can be shown logically to produce precisely the same outputs for the same inputs does not mean the methods are the same or can be said to work in the same way. One may be faster than the other. One may be more flexible than the other. The skilled reader of the patent would understand that there may be advantages to implementing the logic using an identifiable profile state transition matrix (whether in hardware or software). In particular using a matrix has the advantage of flexibility. By actually setting out the priorities in a matrix, it would be a simple matter to change the priorities by replacing one matrix with another. That is not the case for a system in which the logic is hard coded into the software even if that logic could be shown to be mathematically equivalent to a matrix.
That conclusion was not challenged on appeal. BT contends now that ASSIA’s infringement case involves in effect resurrecting the failed reverse engineering case.
The claim refers to a plurality of target line profiles. The trial judgment (paragraphs 216-218) concluded that the claim did not exclude a system in which the claimed method operates only in respect of a subset of all possible profiles and did not require the profile state transition matrix to include all possible transitions. This was relevant because the Cap Level table in the NGA system did not deal with interleaving. It only dealt with data rates. It was not a matrix of all possible transitions because before the re-profiling logic was run, a transition to a profile with the same data rate but a different interleaving level was another possible transition.
This point was taken on appeal. The Court of Appeal upheld the trial judgment. BT’s argument on appeal covered three points. The first point focussed on the construction issue itself and was rejected in paragraphs 47-50 of Floyd LJ’s judgment. A second point related to paragraph 240 of the trial judgment and was dismissed in paragraphs 51-53. The third point taken on appeal and the Court of Appeal’s decision on it are addressed in paragraphs 54 and 55. Given the issues before me they are worth quoting:
The third and final point on this feature of the claim is whether the PSTM is allowed to indicate as possible a transition which is impossible. This is one of the more convoluted of BT's arguments and can only be understood by explaining the use which it seeks to make of the argument in relation to infringement. When the NGA system runs the green logic, the cap level table includes entries for profiles with lower cap levels but the system cannot transition to these profiles because there is no possible outcome of the logic which will cause one of those profiles to be selected.
In the patent, impossible transitions are excluded from the final matrix, T, as shown in Figure 4, but other matrices include zero values, indicating that they are impossible. I would accordingly accept the submission that it must be possible from the matrix to obtain an indication of which are the possible transitions and which are not. However, care must be taken with what is meant by a "possible" profile for the line. The mere fact that a profile is subsequently excluded from use by running a particular version of the software does not mean it is an impossible profile. It was still a possible state into which the system could transition, depending on the choice of logic.
BT relies on paragraph 55 and in particular the second sentence. It points out that the Service Profile Table in the NGA Equation system includes every single profile available to the system and contends that it is not possible from that table “to obtain an indication of which are the possible transitions and which are not”. Therefore BT argues the Service Profile Table is not a profile state transition matrix in accordance with the claim as construed by the Court of Appeal.
At this stage I will focus on the construction of the claim and not concern myself with the infringement issue. Two points arise from paragraph 55 of Floyd LJ’s judgment. First is the statement in the second sentence that it must be possible to obtain an indication of which are the possible transitions and which are not. The court there did not have to consider what constituted the relevant indication. Second, the final three sentences relate to the point that possibility is something which exists a priori. In the example under consideration once the controller was running green logic it followed that lower cap level profiles could not be chosen. However before the reprofiling logic was run in the first place, one cannot say whether green logic would be run at all. At that a priori stage the lower cap level entries were possible. Thus the claim was satisfied.
The terms “possible transitions”, “priority”, “feasibility”, “sub-rules”, “threshold tables” and “overall rule” do not give rise to distinct issues in this case. The relevant parts of the trial judgement are paragraphs 219-220 and on appeal at paragraphs 6268. A point worth highlighting is that a holistic approach to the overall rule was legitimate (Floyd LJ paragraphs 92-94).
Reported and estimated data were addressed in paragraph 221 of the trial judgment and paragraphs 56-61 on appeal. Nothing turns on that now.
An issue at trial was about the scope of the requirement to determine the feasibility of each of a plurality of target profiles. BT had argued that the claim required that a calculation of feasibility or infeasibility be carried out for every possible target profile. The trial judgment (paragraphs 222-225) accepted ASSIA’s submission to the contrary that there was no reason to exclude a system which could get the correct profile without checking every possible profile. There is no reason to examine the feasibility of a possible profile with a lower priority than a given feasible profile. This was upheld on appeal (paragraphs 69-70).
The issues before me now involve considering the words “evaluating”, “indicating” and “selecting” in the claim. The points on “evaluating” and “selecting” are best addressed in the context in which they arise. It is convenient to address “indicating” at this stage. The word appears in the phrase “a profile state transition matrix indicating a plurality of possible transitions from the current line profile ...” in feature (f) of claim 1. The word is an ordinary English word. To address its meaning relevant to this case one needs to consider to whom the matrix is indicating and what use is to be made of the information indicated. In other words what is the purpose of the indication?
Starting with the patent specification itself, figure 4 contains two matrices T2 and T which have both possibility and priority information in them. Although matrix T is set out above, it is worth putting both side by side:
Both matrices contain the same information, but they record it in different ways. In both matrices the columns represent the current profile. So the first column relates to the case in which profile 1 is the current profile. In T2 the rows represent target profiles. Thus the first column of T2 means that from profile 1, transitions to profiles 1, 2, 5 and 6 are possible and the priorities as between those four are as follows. Highest priority (priority 1) is profile 2. Next (priority 2) is profile 6 and then (priority 3) there is profile 1. Finally (priority 4) is profile 5. In other words the entry in matrix T2 is a number which represents the ranking of the possible transition. The zero represents an impossible transition. Because in the example there are never more than four possible transitions it is possible to create a small matrix T. There the entries in the matrix are the numerical names of profiles. The priority ranking is given by the row. Some columns in T have zeros because fewer than four transitions are possible.
These two matrices are explained from paragraph [0043]. It is clear that both are profile state transition matrices and that both “indicate” a plurality of possible transitions and a priority value for each transition. Clearly the invention uses these indications to achieve the overall desired result of making the highest priority feasible transition, but the specification does not seek to impose any limitations on how these indications are used. Neither party drew attention to any other discussion in the patent about how the indications present in these matrices were used.
The skilled reader would not think the patentee has intended to impose any particular limitation on the manner in which the profile state transition matrix indicates what it is required to. In the two matrices priority and possibility are indicated in different ways. The claim is not limited to either method.
The reader would understand that the system will have to work in such a way as to make use of the information recorded in the matrix. In that sense there must be some causal relationship between what is indicated in the matrix and the achievement of the result. The information recorded in the matrix is clearly not simply there to be seen by a human being, it is to be used by the system. Nevertheless as long as the information indicated by the matrix is used in the process of evaluating which profile to move to, the requirement for indication will be satisfied. As I said, the claim does not impose any limits on how the information is used and so, for example there is nothing in claim 1 which states that the software must work its way down the rows in the profile state transition matrix.
The NGA Equation system
Save for the replacement of the loop by the equation in both the upstream and downstream logic, the NGA Equation system is identical to the NGA system found to infringe. The Court of Appeal summarised the NGA system as follows
Only the NGA network was and is alleged to infringe 790. The NGA network is controlled by a RAMBo (standing for Rate Adaptive Monitoring Box), that is to say a network management system. The NGA network offers several products to service providers, each of which has a pre-determined set of profiles. Each profile contains a set of configuration parameters (data rates, margin, interleaving parameters) for the modem pair. There are 36 different downstream profiles and 18 different upstream profiles.
The RAMBo instructs the modems to use a particular profile selected from the set of available profiles. The RAMBo uses data collected from the modems to determine whether it is necessary to change the profile on the line, and if so, what profile to change to. For this purpose RAMBo receives a data file once per day containing operational data about the operation of the line.
Each profile employed by the NGA system has a cap level which specifies a maximum and minimum data rate. The profiles are given a number, ranking them in order of rate. A downstream cap level of 36, for example, represents the highest maximum data rate, 80Mbps; a downstream level of 1 represents a maximum data rate of 2 Mbps
The logic used by the RAMBo is in broad terms as follows. The daily operational data is analysed so as to allocate an Indicated Line Quality (ILQ). These are characterised by colour: red and green indicating a change is necessary. If a change is indicated, a further assessment occurs to decide what the change should be. Broadly, the red logic may reduce the cap rate or increase interleaving; the green logic may increase the cap rate or reduce interleaving. Lastly, once a new profile is selected, a message is sent to cause the modem to re-initialise using the new profile.
The logic employed in certain circumstances makes use of a parameter called the "safe rate". This is a calculated parameter arrived at by the formula:
Safe rate = (0.7 x actual rate) + (0.3 x maximum attainable rate)
The safe rate is thus a rate somewhat higher than the actual rate, but lower than the maximum attainable rate. The maximum attainable rate is an indication from the modem pair as to the data rate that it could achieve with appropriate new configuration parameters.
On a red ILQ the logic will try to decrease the cap rate; on a green ILQ it will try to increase the cap rate. In order to achieve this, the logic runs a loop. The system calculates the safe rate which is used in selecting the correct profile. The objective is to find the profile with a maximum data rate just higher than the safe rate. The profiles are arranged in a table in descending order of cap rate. The logic then examines the cap levels in descending order asking whether the maximum rate is above the cap rate. If it is above the safe rate, it will continue and ask the same question in relation to the next level down, and so on until it arrives at one where the maximum rate is below the safe rate. It will then select the profile which is the last one to have been above the safe rate.
The infringement case focuses on the green downstream logic. This is illustrated in Figure 5 of the PPD, but a simplified version of that figure was produced in BT's skeleton, and is sufficient for these purposes:
At decision B the system chooses between two branches, representing different types of profile change. One branch allows for the possibility of a reduction in interleaving level. The other branch allows for increasing the cap level. In essence decision B asks a number of questions. For example, if the cap level is already at the maximum allowable cap level, a further increase in cap level is not possible and reduction in interleaving is the only possibility. Two further tests are employed, both of which are also concerned with selecting between a reduction in interleaving level and a cap level change.
In the case where the logic decides, at decision B, that a cap level change is in order, the system is directed to decision box G. Within this stage of the logic the words "run cap level selection loop" appear. The system runs a loop described in the PPD as follows:
"The loop operation begins with the maximum cap level
(i.e. cap level 36 downstream in the 80/20 product) and
checks whether the next lowest cap level's maximum rate is above the safe rate (i.e. 74Mbps for cap level 35 downstream in the 80/20 product). If so, the loop operation then considers the next lowest cap level (i.e. cap level 35) and checks whether the next lowest cap level's maximum rate is above the safe rate (i.e. 67Mbps for cap level 34 downstream in the 80/20 product). The process is repeated until the loop reaches a cap level for which the next lowest cap level's maximum rate is not above the safe rate: the loop ends on that cap level (the one with the maximum rate above but closest to the safe rate). If the selected cap is not greater than the current cap level, RAMBo will proceed to Decision D but if the selected cap level is greater than the current cap level then that is the cap level that RAMBo determines for use."
The only difference between the system described above and the NGA Equation system is that the loop referred to in quoted paragraph 79 is replaced by an equation. The point of the loop is to find a profile with a maximum rate above but closest to the safe rate. The equation achieves this directly. It is:
Cap Level (ds) = 8.79979 (log2.56635(safe rate)) -5.29677
The output of the equation is rounded up to the nearest integer to give the cap level with a corresponding maximum rate above but closest to the safe rate.
This equation and the Court of Appeal’s description quoted above relate to the logic handling the downstream profile on a green ILQ. Analogous equations replaced analogous loops for upstream profiles and for red ILQs.
The reason these equations work is because of the pre-existing numerical relationship between the cap level number and the maximum data rate for a profile which is embodied in the Cap Level table. ASSIA referred to paragraph 240 of the trial judgment which explained that in the Cap Level table the profiles are ranked in order of data rate and that is how the priority value of the profiles is indicated. The cap level itself is the number which represents the row in the table. In other words the cap level is the rank.
What BT has done is plot the data in the Cap Level table as a graph. This produces a series of points to which a curve of the form governed algebraically by the logarithmic equation can be fitted. Since the cap level is an integer, the answer has to be rounded appropriately.
Part of ASSIA’s case is that this shows that in truth the NGA Equation system is the very same system as before, in all but name. Nevertheless BT is entitled to and does make the point that a critical element of the construction of claim 1 adopted at trial, which also played a key role in relation to validity, was that the claim depends not only on what outcome is produced by the DLM controller for a given set of input conditions but on how it gets there. BT’s case is that this replacement of the loop with an equation means the system no longer gets to the answer by using a matrix.
Although it reaches the same result as before, it reaches it in a different way.
BT also argues that one advantage of a matrix based system is flexibility and that this equation based system now is not as flexible as it was before as a result of not using the table. Flexibility is an advantage of matrix based systems which was recognised at trial but I am not satisfied that the NGA Equation system is less flexible that the NGA system to any material extent. To establish that would have required evidence, probably from an expert, which was not produced.
Part of ASSIA’s retort is that although the equation means that the Cap Level table is no longer employed directly at that step in the logic, in fact the very same ranking relationship between cap level and profile remains an integral part of system. This relationship is integral to the Service Profile Table. Indeed the matrix focussed on at trial, the Cap Level Table, always had and necessarily needed to have an exact relationship with the Service Profile Table. I believe ASSIA is correct about this, as I shall explain.
To understand the relationship it is necessary to look closer at the Service Profile Table. Part of it is set out below:
Number | Name | D/S cap | U/S cap | D/S int | U/S int |
282 | sfaD250_125_16_08U037_018_08_04 | 24 | 7 | 3 | 2 |
283 | sfaD250_125_16_08U027_013_00_00 | 24 | 5 | 3 | 1 |
284 | sfaD250_125_16_08U027_013_08_04 | 24 | 5 | 3 | 2 |
287 | sfaD250_125_16_08U008_001_00_00 | 24 | 1 | 3 | 1 |
288 | sfaD250_125_16_08U008_001_08_04 | 24 | 1 | 3 | 2 |
289 | sfaD224_112_00_00U150_075_00_00 | 23 | 15 | 1 | 1 |
290 | sfaD224_112_00_00U150_075_08_04 | 23 | 15 | 1 | 2 |
291 | sfaD224_112_00_00U100_050_00_00 | 23 | 13 | 1 | 1 |
Each row in the table represents a full profile for a line. By full I mean that the row specifies both the upstream line profile and the downstream line profile. The column “Number” is a unique number for each row. The “Name” is the name of a data file which actually contains the relevant configuration parameters applicable for that full profile. The next four columns are the cap levels and interleaving levels for downstream (D/S) and upstream (U/S). Each row involves a unique combination of these four numbers. Thus each full profile is characterised and identified by that unique combination. There are 3888 (=36x18x3x2) full profiles in the Service Profile Table.
A final step in the way the NGA system works (both the original system found to infringe and the NGA Equation system) is now critical to the issues whereas before it was not focussed upon. Once the re-profiling logic has finished, what it has done is to identify the cap level and interleaving level for both the new upstream profile and the new downstream profile. It does this (where relevant) whether it uses the loop as before or the equation. These four numbers are used at the final step to identify the data file name to pass to the DSLAM.
Thus the overall process depends upon two things, first the relationship between these numbers on the one hand and the actual set of configuration parameters making up a profile stored in a given data file on the other hand and second on the inherent ranking which arises from using numbers in this way. The ranking, i.e. the prioritisation, of profiles by data rate is exactly the same in the NGA Equation system as it was before. The equation works instead of the loop precisely because the ranking created by the cap level number is maintained. The ranking was only meaningful in the original
NGA System because it existed in the Cap Level table. The ranking today in the NGA Equation system is only meaningful because it exists in the Service Profile Table. So ASSIA contends nothing has really changed.
I confess I do not find this an easy case to decide. BT can point out that the equation involves a degree of “hard coding” (see the last sentence of paragraph 214 of the trial judgment, quoted above). Nevertheless ASSIA is right and entitled to emphasise just how small the difference is between the infringing system and the system under consideration. In the end however BT is right and entitled to say that what matters is whether the claim is satisfied by the NGA Equation system. In that respect I agree. The answer must turn on the words of the claim.
Does the NGA Equation system infringe?
First I will deal with an aspect of ASSIA’s infringement case which is wider than the one argued at trial. Unlike the Cap Level table relied on at trial, the Service Profile Table includes interleaving levels as well as cap level. Before me now ASSIA argues that the Service Profile Table indicates the priorities for interleaving and relied on interleaving as part of its case now. I do not accept interleaving can infringe because, as found at trial and not challenged on appeal, in the NGA system there is no relevant priority between interleaving and cap level. That is trial judgment paragraphs 235238. Since the NGA Equation system produces the same outputs in the same circumstances as the system considered at trial, the same conclusion follows. Since no priority exists between interleaving and cap level, it is not and cannot be indicated in the Service Profile Table. There is a binding decision between these parties that the NGA logic as a whole does not infringe. That was not fatal at trial because of the finding that it was not necessary that the invention was used for all re-profiling decisions. The finding at trial was that the processing relating to cap level did infringe. Given the nature of the change to introduce the equation, ASSIA’s infringement case cannot have improved.
Another element of the NGA logic focussed on before me but not addressed in as much detail before was the red logic. BT repeatedly submitted that I had found at trial that the red logic did not infringe. That is not accurate. The trial judgment dealt with green logic but did not deal with the red logic. I believe the position last time was that the conclusion about the cap level aspect of the green logic would follow for the corresponding aspect of the red logic but neither side suggested then that it was necessary to consider red logic distinctly. If ASSIA is correct now that the cap level aspect of the green logic in the NGA Equation system infringes then I believe the conclusion follows for the corresponding aspect of the red logic.
There was a new point before me now about Decision A in the red upstream logic. This arose from part of ASSIA’s Statement of Case on Infringement. BT pointed out that paragraph 35(e) of the Statement of Case was incorrect and so that way of putting ASSIA’s case was wrong. I think BT was right about this but I was not persuaded that this element of ASSIA’s case was a fruitful way of looking at things and I will not deal with it any further. BT also submitted that this point represented the totality of ASSIA’s pleaded infringement case. I reject that. ASSIA’s infringement case is put on a broader basis than that.
I turn to focus on the green downstream logic. There are three key points on the language of the claim –evaluating (feature (d)), selecting (feature (l)) and indicating (feature (f)).
Feature (d) – evaluating
BT argues that the Service Profile Table, even if it is a profile state transition matrix, is not used in the re-profiling logic save at the very end and so is not used in the right way to satisfy the claim. This argument involved two points. One was a general submission that in effect the NGA Equation system just did not work in the same way as the claimed method and the other was focussed on the word “evaluating” in feature
(d).
As to the first point, it is true that the Service Profile Table is only consulted at the end but that is not relevant. As long as the requirements of the claim are satisfied (such as the requirement for evaluation (feature (d)), the requirement that the profile state transition matrix indicates the appropriate things (feature (f)) and the correct selection taking place (feature (l)), I do not see that it matters when in the processing the profile state transition matrix is consulted. Claim 1 requires the profile state transition matrix to be implemented in hardware and/or software. That is true of the Service Profile Table. I reject the suggestion that over and above the words in the claim, there is some other implicit requirement about when the profile state transition matrix has to be consulted.
The second point is that the word evaluating in claim 1 governs at least all of the wording in features (e) to (i) and so includes the reference to the profile state transition matrix in feature (f) and so imposes a requirement that the matrix be used as part of the evaluation step in the process. Grammatically BT is right about the way claim 1 is structured. However I do not accept this reasoning means that the claim imposes on the profile state transition matrix any role in the evaluation process other than the role of “indicating” as stated in feature (f). That will be considered below. If the profile state transition matrix indicates what it is required to indicate then the claim is satisfied.
I note that as part of the interpretation of the word “indicating” (paragraph 35 above) I have held that the system must make use of the information indicated in the matrix and that there must be some causal relationship between what is indicated in the matrix and the achievement of the result. This overlaps with the argument about “evaluating”. There is a distinction between using the matrix itself and using the information indicated in the matrix. I do not accept the claim requires that the matrix itself must be used in the evaluation step.
Furthermore, as ASSIA pointed point, the argument about “evaluating” turns on the location of the word in claim 1. Claim 13 is drafted differently. I think that even if BT’s point was right, ASSIA’s reply that claim 13 is not written in the same way as claim 1 and not limited in the same sense would be a good answer to it. The fact that a system consulted the profile state transition matrix at the end would not take it out of claim 13.
a profile state transition matrix indicating …(feature (f))
BT submits that whatever else might be the case, the Service Profile Table cannot be indicating a plurality of possible transitions for two reasons. First, since the Service Profile Table is not accessed until the end of the reprofiling exercise, whatever is set out in the table is not being “indicated” to any relevant part of the system. At the point that the controller decides which profile to transition to, it does not access the Service Profile Table. Second the Service Profile Table is a list of all conceivable profiles. It is not a list of possible profiles from a given starting profile. Accordingly whatever is “indicated” by the Service Profile Table, it cannot be what is required by the claim in feature (f). That feature calls for the profile state transition matrix to indicate “a plurality of possible transitions from the current line profile”. Looking at the same point in another way, BT argues that the Service Profile Table cannot satisfy the requirement of the claim identified in paragraph 55 of the judgment of Floyd LJ. Since it includes all conceivable profiles, the Service Profile Table inevitably includes impossible transitions as well as possible ones and does not indicate that the impossible ones are impossible.
I reject the first point. It is true that the controller does not access the Service Profile Table itself until the decisions have been made. However in the relevant circumstances, the decision making steps depend on the profile priority ranking inherent in the numerical cap levels. That ranking is the very information indicated by the Service Profile Table. The NGA Equation system uses the equation to find an entry in the Service Profile Table.
The cap level number in the Service Profile Table is the same kind of indication of priority as is given by the non-zero numbers in matrix T2 in the patent. Like matrix T2, in the Service Profile Table the rank is given by a number and the row represents the profile. There is nothing in the patent to exclude a system which used an equation to find the highest ranked target profile in T2 by using an equation to come up with the required ranking number and then finding out which row of matrix T2 is the one with that number in it.
The NGA Equation system only works because the information indicated by the Service Profile Table is a priority between possible transitions in the relevant circumstances and is used as such. The logic uses the numbers as an indication of priority before it turns to the table but in my judgment that makes no difference.
ASSIA’s answer to the second point was two fold. First ASSIA submitted that because it starts with the word “I would”, the second sentence in paragraph 55 of Floyd LJ’s judgment was not a binding decision. I do not agree. The sentence is a clear statement by the judge, with whom the other members of the Court of Appeal agreed. Second ASSIA submitted that the Service Profile Table did indicate what was required because knowing the relevant details of the current line profile one can look at the table and see which are possible and impossible.
BT submitted that this was wrong or irrelevant for a number of reasons. It was treating “indicating” as if it meant indicating to a human and not indicating to the controller. It was not possible to obtain an indication of what are possible transitions from the table, not least because the table includes interleaving. So for example a transition which involves both increasing cap level and decreasing interleaving is
always impossible yet the profile with that characteristic is in the Service Profile Table. For the same reason, the fact the table includes combined up and downstream profiles together means it contains far more transitions than are ever possible. Really, BT argued, this was the reverse engineering case all over again.
I prefer ASSIA’s submissions to those of BT on this point. Knowing the current line profile one can look at the table and see which are possible and impossible. The fact a
human can do this does not mean the Service Profile Table is only indicating something to a person. It is simply a reflection of the fact that one can look at it and understand how the logic works. The logic is deterministic in nature. Of course when the system carries out a reprofiling run it also knows the current profile cap level and interleave level.
Moreover although the numbers in the Service Profile Table can be read and interpreted by people, they are there to be used by the system. The existence of the particular entries in the Service Profile Table causes the system to work in the way it does.
BT is correct that the existence of interleaving means that from a given start, many of the profiles are impossible. It is also true that there is no a priori priority between some profiles and others in the Service Profile Table, as I have held already. This is all irrelevant since the system will still infringe if it only uses the invention for some transitions and not others. The relevant transitions for this purpose are to profiles with the same interleave level but a different cap level. These possible profiles are indicated as such in the Service Profile Table and their priority is indicated by the cap level number. So too are the impossible transitions indicated. For example any profile with a different cap level and a different interleave level as compared to the current profile is impossible.
BT takes a point that the table includes combined up and downstream profiles together below. I will address that below but assuming it is relevant, with knowledge of the current full profile (up and down stream), the Service Profile Table indicates the possible full profiles with the same (up and down stream) interleave level but different cap levels and indicates their priorities. The impossible profiles are also indicated in the same way.
A key aspect of BT’s case is that although the table does not change, the indication relied on is different starting from different current profiles. In that sense the Service Profile Table is different from the Cap Level table. I accept that. However for what it is worth, the Service Profile Table is not so far from the example matrices in the 790 patent. Unless one knows which column to look at (in other words unless one knows the identity of the current profile) one cannot tell which profiles are impossible nor which are ranked in what way.
Selecting one of a plurality of target profiles (feature (f))
ASSIA contended that the NGA Equation system satisfies this step when it selects a target profile in the Service Profile Table at the end of the process, having arrived at a
cap level and interleave level for both upstream and downstream profiles.
BT contended that the trial judgment decided that the relevant selection step found to infringe was in the loop logic. BT argued that now in the NGA Equation system the profile is selected by the equation. That is the relevant selection and it does not infringe (because BT says it does not use the matrix etc.). Once the profile has been selected, it cannot be selected again and so the step ASSIA relies on is not relevant.
The point did not have the importance now placed on it and I do not believe the trial judgment makes the finding BT contended for. The relevant paragraphs are 239 to 241. Paragraph 239 notes that the safe rate is calculated and used to “identify the correct profile to be selected”. The loop is discussed in paragraph 240, which does not mention selection at all and then in paragraph 241 the judgment concludes that in operating this way feature (l) is satisfied, the NGA logic selects one of the target profiles in the Cap Level Table in which to operate the line. There is no binding decision that the selection required by claim 1 takes place and only takes place when the loop logic identifies the correct profile to be selected. It did not matter at trial. The idea expressed in paragraph 239 of the trial judgment is that the loop logic identifies the correct profile to be selected (my emphasis). That is entirely apt to characterise what was going on.
The same language is also entirely apt to characterise what happens in the NGA Equation system when the equation is computed. This processing identifies the correct profile to be selected. The process of selection of the profile itself is only completed when the controller consults the Service Profile Table. I reject this part of BT’s case.
A further element of the selection point relates to the fact that the profile selected from the Service Profile Table is a full profile, whereas what is identified by the equation is only an upstream or downstream profile. So BT said ASSIA’s usage of “profile” was inconsistent and when consistent language was used, a further noninfringement point was revealed.
I am not persuaded by this argument. It is true that the file name sent to the DSLAM refers to a file with configuration parameters for both the upstream and downstream lines but the two are distinct. Their selection logic is entirely distinct and independent. The system identifies both profiles separately and then identifies the file which has the two appropriate sets of configuration parameters together. It seems to me that if the system infringes in its method of identifying (say) the downstream profile, the fact that it identifies the upstream profile in a non-infringing way and so the overall selection is not entirely down to a method according to the claim, is irrelevant.
Finally before leaving selecting it is worth noting that this identification exercise (to use a neutral term) gets the right profile by using the cap level number as a key and relies on the nature of the Service Profile Table itself as a matrix which allows the profile to be chosen by using that number.
The reverse engineering case and infringement overall
I reject BT’s argument that this is the reverse engineering case which was rejected at trial. The Service Profile Table is not a reverse engineered matrix like the exhibits
created by Professor McLaughlin. It is an integral part of the NGA Equation system and is implemented in the software of that system.
Moreover, to the extent that it matters, although the equation could be said to be more of a “hard coded” approach than the loop (c.f. trial judgment paragraph 214) that coding still depends on the values indicated by the relevant Service Profile Table. There is a clear causal relationship between the values indicated in the Service Profile Table and the achievement of the result.
Standing back it seems to me that the NGA Equation system infringes claim 1. In the circumstances considered at trial, such as using the green downstream logic, the NGA Equation system, like the original NGA system itself, operates by having isolated out from the overall set of all profiles in which a line is capable of operating, a set of possible profiles ranked by priorities which exist independently of line conditions and then choosing from that set the highest priority feasible profile. The other aspects of the claim concerning feasibility (sub-rules etc.) are satisfied. The process works as a whole because for a given starting profile the possible profile transitions and the priorities are indicated in the Service Profile Table. That table is a profile state transition matrix. The final profile is selected from that matrix. The fact an equation is used instead of a loop makes no difference, the NGA Equation system infringes claim 1 just the same.
The Proposed Further NGA Equation system
I am not satisfied that the Proposed Further NGA Equation system would avoid infringement if the NGA Equation system infringes. The nature of the proposal is to replace a table in the NGA system with some hard coded software. The table was part of the NGA system found to infringe at trial (see trial judgment 245-247) and is part of the NGA Equation system too. The idea is that that this replacement would mean the system no longer satisfied the claim because the claim requires a plurality of threshold tables (i.e. more than one). The proposal is intended to leave the NGA system with only a single threshold table not a plurality. The remaining threshold table is one which happens to be called the euc_dim_variables table.
BT admitted ASSIA’s case that the euc_dim_variables table contained relevant thresholds (the us RaiseCapBarrier threshold and the us LowerCapBarrier threshold) and was therefore a relevant threshold table. BT’s point was that by hard coding another table, there would be only a single table left (the euc_dim_variables table) and not a plurality.
ASSIA did not admit the change was explained sufficiently clearly to justify declaratory relief but I do not have to decide that because ASSIA also pointed out that there was yet another relevant threshold table remaining in the system. It was the upstream Cap Level table. This table contains data rates. BT argued that these rates were not thresholds because to be a threshold a value has to be used within an inequality. ASSIA agreed with BT’s definition of a threshold and I accept it. ASSIA pointed out that the NGA system in all its guises does use the value(s) from the Cap Level table in an inequality. There was no answer from BT. I find that the values in the upstream Cap Level table are thresholds and the table is a threshold table. Thus if the NGA Equation system infringes, so would the Proposed Further NGA Equation
system. Despite the proposed modification the system would still have a plurality of threshold tables and would still satisfy feature (h) of claim 1.
Abuse of process
BT advanced what it argued was a procedural objection or objections. One submission was that ASSIA was estopped from alleging infringement of the NGA system red logic having failed on that issue at trial. I have already rejected the premise of that submission. ASSIA did not fail at trial. However just as at trial, I have not found it necessary to consider ASSIA’s red logic in any detail in this judgment.
In its list of issues BT characterised its other procedural objections this way:
Is ASSIA seeking to assert a materially wider construction of claim 1 than it asserted at trial?
If so, given ASSIA’s position that BT is said to be estopped from challenging the validity of claim 1, is ASSIA also estopped and/or prevented by rules of abuse of process from asserting such a construction?
The corresponding issues in ASSIA’s list were:
Is ASSIA asserting a construction which is ‘broader’ than or inconsistent with what they ‘implicitly’ asserted at trial or on appeal and if so in what respect?
If so should BT be permitted to attack the validity of the Patent, or should ASSIA be precluded from asserting that construction?
Although formulated in different terms, the two points are clear enough. The first relates to construction and the second to consequences.
As to the law, both parties argued this point from the premise that in general once a party has attacked the validity of a patent and the patent has been found valid, they cannot normally come back and attack validity again, even on new grounds. The only judgment I will cite for this proposition, specifically concerned with patents, is that of Sir Thomas Bingham MR (as he then was) in Chiron v Organon (No 14) [1996] FSR 701. He characterised the reason why this was not permitted as a species of abuse of process.
ASSIA referred to Johnson v Gore Wood [2002] 2 AC 1 at 22-31. There Lord Bingham emphasised the importance of finality in litigation and that a party should not be vexed twice in the same matter. He explained that bringing a claim which should have been raised in earlier proceedings may, without more, amount to abuse but, as ASSIA pointed out, he also explained that it is wrong to hold that because a
matter could have been raised in earlier proceedings it should have been, so as to render raising it in later proceedings necessarily abusive. The correct test was a broad merits based judgment focussing on whether a party is misusing or abusing the court’s process.
I do not believe the application of Johnson v Gore Wood to challenges to the validity of patents undermines the general proposition stated above. It simply serves to emphasise that the position is not absolute.
The starting point is that ASSIA is indeed advancing a construction of the claim which was not advanced at trial (or on appeal). The questions addressed now were ones which did not arise at trial. However the claim as interpreted in this judgment is neither wider nor narrower than the claim at trial. The current issues have not been decided before. At best this hearing has demonstrated only that the trial and appeal did not resolve every conceivable debate about the location of the boundary of the claim. Some issues were left outstanding and these have now been resolved. I reject BT’s case that in some sense ASSIA’s construction is wider than before. I also reject the suggestion, if made, that the finding of infringement is inconsistent with the earlier judgment.
BT’s best point is that the original NGA system found to infringe at trial included the Service Profile Table just as the NGA Equation system does. Thus standing from today looking back, if ASSIA had known as much about the NGA system as it knows now, it could have argued that the Service Profile Table in the original NGA system led to infringement. Johnson v Gore Wood shows that merely because a point could have been taken is not enough to mean that taking it now is automatically abusive, but it seems to me that the fact a point could have been taken is at least sufficient to justify looking at the overall circumstances.
I will assume, without deciding, that ASSIA should be taken to have known as much about the Service Profile Table and its significance as they know now. ASSIA argues that BT’s information before trial was insufficient in this context whereas BT contend that it was.
On the assumption I have made it therefore follows that ASSIA could have advanced the infringement case run before me now, at the trial last year. But I reject the contention that this makes it fair to say that ASSIA should have advanced the Service Profile Table infringement case at trial. There was simply no reason to do so. The crucial point is that the system alleged to infringe at trial was one thing whereas the system being considered now is another different one. ASSIA established that the original NGA system infringed. That was not a warrant that a different system did not. If the infringement case at trial had been concerned only with distinct and clearly separable adjunct to the NGA system and, after a finding of infringement by that adjunct, the defendant removed it, then I can see that a defendant in such a case might have grounds to complain about abuse of process if the patentee turned round and said for the first time - oh well the system without the adjunct still infringes. But that is a long way from the facts of this case.
In my judgment it is not abusive for ASSIA to argue its infringement case about the NGA Equation system and there is simply no good reason why BT should be permitted to challenge validity a second time.
Finally I will add this. If the Service Profile Table argument had been run at trial then the issues decided now would have been decided then and the validity case would have taken them into account. That would have made no difference because the claim boundaries set by the trial (and the appeal) are the same in both cases and so the
failure of the validity attack would not change. That is a further reason why there would be no justification in permitting BT to attack the validity of the 790 patent a second time.
Conclusion
I find that the NGA Equation system infringes the 790 patent and so would the Proposed Further NGA Equation system.
Annex
Claim 1:
(a) A method in a DSL controller coupled to a DSL line, the method comprising:
(b) operating the DSL line in the current line profile;
(c) collecting operational data relating to operation of the DSL line in the current line profile;
(d) evaluating whether to transition operation of a DSL line from a current line profile to one of a plurality of target line profiles
(e) by implementing in hardware or software or a combination thereof:
(f) a profile state transition matrix indicating: a plurality of possible transitions from the current line profile to one of the plurality of target line profiles, and a priority value specifying the priority of transitions for each profile,
(g) a plurality of sub-rules, each to evaluate a feasibility or infeasibility of the plurality of target line profiles within the profile state transition matrix,
(h) a plurality of threshold tables, wherein each of the plurality of threshold tables emphasize or de-emphasize the individual subrules, and
(i) overall rule that utilizes the one or more sub-rules to determine the feasibility or infeasibility for each of the plurality of target line profiles, wherein the plurality of sub-rules and the overall rule are based on reported and estimated data from the collected operational data;
(k) determining the feasibility or infeasibility of the current line profile and each of the plurality of target line profiles based on the collected operational data and dependent on the outputs from some or all of the sub-rules and the overall rule; and
(l) selecting a one of the plurality of target line profiles in which to operate the DSL line, wherein the selected line profile comprises whichever of the current line profile and the plurality of target line profiles has a highest priority in the profile state transition matrix, and is not evaluated to be infeasible; and
(m) operating the DSL line in the selected profile.
Claim 13:
A DSL controller coupled with a DSL system to evaluate whether to instruct a DSL line operating in a current line profile to transition to operation in one of a plurality of target line profiles, a DSL controller comprising:
a state transition control unit implementing in software or hardware or a combination thereof;
a profile sate transition matrix indicating: a plurality of possible transitions from the current line profile to one of the plurality of target line profiles, and a priority value specifying the priority of transitions for each profile,
a plurality of sub-rules, each to evaluate a feasibility or infeasibility of the plurality of target line profiles with the profile state transition matrix,
a plurality of threshold tables, wherein each of the plurality of the threshold tables emphasise or de-emphasise individual sub-rules, and
an overall rule that utilised the one or more sub-rules to determine the feasibility or infeasibility for each of the plurality of target line profiles, wherein the plurality of sub-rules and the overall rule are based on reported and estimated data from the collected operational data;
a data collection module to collect operational data relating to operation of the DSL line in the current profile;
an analysis module to determine the feasibility or infeasibility of the current line profile and each for the plurality of target line profiles based on the collected operational data and dependent on the outputs from some or all of the sub-rules and the overall rule; and
a line profile selector module to select one of the plurality or target line profiles in which to operate a DSL line, wherein the selected line profile comprises whichever of the current line profile and the plurality of the target line profiles has a highest priority in the state transition matrix and is not evaluated to be infeasible.