X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=THEORY;h=83de604ddb4334a11ff566b40f35dcb8f9789475;hb=97ed131fce2ba8de7454b00eef6a9adcd09e7fa0;hp=f40a1fc5848ad786e51b61a17b15e89e27c7e807;hpb=a2bee3f9f4ecc497a19a96a2f6b1264a1f9809e7;p=topbloke.git diff --git a/THEORY b/THEORY index f40a1fc..83de604 100644 --- a/THEORY +++ b/THEORY @@ -15,14 +15,27 @@ COMMIT ANNOTATIONS P(C) Either P s.t. C \elem P - or \bottom meaning \notexists_{P} C \elem P. + or _|_ meaning \notexists_{P} C \elem P. + + { Pi | C \haspatch Pi } + ie the set of included patches For every Px, E(C,Px+) Implicitly for C \elem Pc+, E(C,Pc+) = { C } and this is not annotated explicitly. - Also implicitly for P(C) = \bottom, \forall_{Px} E(C,Px+) = { } + Also implicitly for P(C) = _|_, \forall_{Px} E(C,Px+) = { } and this is also not annotated explicitly. + B(C) + For C \elem P+: B s.t. E(C,P-) = { B } + P(C) = P- or _|_: _|_ + + Of these in principle all except P(C) can be recalculated from the + commit history, but that would involve a complete history scan and in + the case of \haspatch is clearly impractical. At some point we may + provide a checker/sanitiser that recalculates E(C,Px+) and B(C) from + the commit history. + SIMPLE COMMIT make C >1 { A } @@ -104,7 +117,7 @@ CREATE BASE from L, P where - P(L) = Pl+ v P(L) = \bottom + P(L) = Pl+ v P(L) = _|_ P(L) != P(B) E(B,P+) = { }