In the network flow playground we started to use a vector of numbers to represent the quality. We had the first element q1 represent the value of the max flow and the second element q2 represents the resource consumption (JVM instruction count). We are going to formalize what Serge and Victor did: You can strengthen or agree only for a subvector of the quality vector. We call the subvector the "focus". When you agree or strengthen you must declare your focus.
We need to define what refutation and strengthening and agreement mean in the presence of quality vectors.
If the quality vector is q =(q1,q2), we have the following cases: (q1,q2) is the quality claimed by proposer (q1',q2') is the quality achieved by opposing/agreeing scholar q1 q2 up q1' q2' better quality for q1 and q2 means a larger number. if focus (q1,q2): strengthen = ((q1'>q1) and (q2'>=q2)) or ((q1'>=q1) and (q2'>q2)) agree = (q1'=q1) and (q2'=q2) if focus (q1): strengthen = (q1'>q1) agree = (q1'=q1) if focus (q2): strengthen = (q2'>q2) agree = (q2'=q2)Next we consider the case when for the first compenent better quality means a greater number and for the second component a smaller number.
q1 q2 up q1' down q2' better quality for q1 means a larger number and better quality for q2 means a smaller number. if focus (q1,q2): strengthen = ((q1'>q1) and (q2'<=q2)) or ((q1'>=q1) and (q2' < q2)) if focus (q1): strengthen = (q1'>q1) agree = (q1'=q1) if focus (q2): strengthen = (q2' < q2) agree = (q2'=q2)etc. The above rules easily generalize to multiple components.