Specification From Examples Julia Johnson Dept. of Math & Computer Science Laurentian University Sudbury, Ontario Canada Problem To describe system characteristics by providing examples of systems that exhibit those characteristics. Outline 1. Problem Statement 2. Criticism of Existing Solutions 3. Suggested Solution 3.1 Rough Sets 3.2 Strength of a Rule 3.3 Rough Mereology 3.4 RM System Specification 4. Conclusions ag ag1 ag2 … ag11 ag12 ag1n ag21 … … agm ag20 agm1 … agmp M L B µB (B3,B1) = B ≥ .25 B1 B3 µL (L3,L2) = L2 L3 L ≥ .4 µM (C5,C1) = C1 C5 M ≥ .14 Rough Mereology Mereology ≡ Theory of “Part of” relation, Lesniewski Rough Mereology – Theory of Relation “Part of to a degree”, Polkowski & Skowron Applications of Rough Mereology Control – Skowron & Polkowski 1994 Warsaw Politecnica Building – Poitr 1998-99 Polish Academy of Science Scheduling – Johnson 1998-99 University of Regina/University of Waterloo µ (x,y) is read “the degree in which x is a part of y” -the rough inclusion function For each construction of objects from sub-objects, we form a vector, B L Where if M1 = O(B1L1) and M2 = O(B2L2) Then B = µB(B1,B2) L = µL(L1,L2) M = µM(M1,M2) M M2 is constructed from B2 and L2 The vector means µB(B1,B2) > B (B1 is part of B2 to degree at least B) And µL(L1,L2) > L (L1 is part of L2 to degree at least L) Then µM(M1,M2) > M (M1 is part of M2 to degree at least M) If Rough Mereology µB (B3,B1) = B ≥ .25 B1 B3 µL (L2,L2) = L2 L2 L ≥ 1 µM (C4,C1) = C1 C4 M ≥ .28 Some Properties of µ (A) µ(x,y) Є [0,1] (B) µ(x,x) = 1 (C) If µ(x,y) = 1 then µ(z,y) > µ(z,x) for each object z A null object is any object n which satisfies (D) µ(n,y) = 1 for every object y L f M B We wish to learn functions f from a set of vectors. B1 L1 M1 B2 L2 M2 B3 L3 M3 . . . . . . . . . Bn Ln Mn Back to the Problem at Hand To describe system characteristics by providing examples of systems that exhibit those characteristics. To determine system cost by providing examples of systems whose design, maintenance and overall costs are known. Suppose we know the following: •Maintenance requirements Maintk and Maintq similar to degree at least Maint , possibly k=q •Cost1 and Cost2 , respectively, of the two systems O(Design1, Maint1) and O(Design2, Maint2) similar by at least Cost. •Specs Designi and Designj similar to degree at least Design , i,j not necessarily distinct Design Cost f Maint We wish to learn function f from a set of vectors. Design1 Maint1 Cost1 Design2 Maint2 Cost2 Design3 Maint3 Cost3 . . . Designn . . . . . . Maintn Costn Design Goal SYS1 SYS2 SYS3 ResponseTime Throughput Memory Robustness Reliability Availability FaultTolerance Security Safety Utility Usability slow low small poor little low poor poor poor poor easy fast high medium average marginal moderate average average average average moderate fast high large good great high good good good good difficult Acceptable? no yes no Table 1: Criteria Inferred from Application Data (ResponseTime, slow) and (Throughput, low) (Acceptable, no), (ResponseTime, fast) and (Memory, medium) (Acceptable, yes), (Throughput, high) and (Memory, large) (Acceptable, no). Uncertain (or possible) rules are: (ResponseTime, fast) and (Throughput, high) (Acceptable, yes), (ResponseTime, fast) and (Throughput, high) (Acceptable, no). System SYS1 SYS2 SYS3 SYS1 1 0 0 SYS2 0 1 .18 SYS3 0 .18 1 Table 3: Rough Inclusion for Table 1 Cost SYS1 SYS2 SYS3 Development Deployment Upgrade Maintenance Administration low low high high little moderate high low high great high high low low great Acceptable? yes yes no Table 2: Criteria Dictated by the Customer System SYS1 SYS2 SYS3 SYS1 1 .2 0 SYS2 .2 1 .6 SYS3 0 .6 1 Table 4: Rough Inclusion for Table 2 Maintenance SYS1 SYS2 SYS3 Extensibility Modifiability Adaptability Portability Readability Traceability easy easy easy easy easy easy difficult moderate easy easy difficult moderate difficult difficult difficult difficult difficult difficult Acceptable? yes yes no Table 5: Maintenance Criteria System SYS1 SYS2 SYS3 SYS1 1 .33 0 SYS2 .33 1 .33 SYS3 0 .33 1 Table 6: Rough Inclusion for Table 5 D1 D2 M1 M2 C1 C2 S1 S1 S1 S2 S2 S3 S1 S1 S1 S2 S2 S3 S1 S1 S1 S2 S2 S3 S1 S1 S1 S2 S2 S3 S1 S1 S1 S2 S2 S3 S1 S1 S1 S2 S2 S3 S1 S2 S3 S2 S3 S3 S1 S2 S3 S2 S3 S3 S1 S2 S3 S2 S3 S3 S1 S2 S3 S2 S3 S3 S1 S2 S3 S2 S3 S3 S1 S2 S3 S2 S3 S3 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S2 S2 S2 S2 S2 S2 S2 S2 S2 S2 S2 S2 S3 S3 S3 S3 S3 S3 S1 S1 S1 S1 S1 S1 S2 S2 S2 S2 S2 S2 S3 S3 S3 S3 S3 S3 S2 S2 S2 S2 S2 S2 S3 S3 S3 S3 S3 S3 S3 S3 S3 S3 S3 S3 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 S1 Table 7: Partial List of Arguments for µ D M C D M C 1 0 0 1 .67 1 1 0 0 1 .67 1 1 1 0 0 1 .67 1 1 1 1 1 .2 .2 .2 .2 .2 .2 .4 .4 .4 .4 .4 .4 .4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 .67 1 1 0 0 1 .67 1 1 0 0 1 .67 1 1 1 1 1 1 1 .6 .6 .6 .6 .6 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Table 8: Partial List of Arguments for RM – ‘acceptable degree’ What? ? How? µ (X, Y) threshold vectors composition of objects agents message passing What? How? Simplicity user – satisfaction learnability ease of use comprehensibility user - friendliness µ (X, Y) threshold vectors composition of objects agents message passing Summary & Conclusions 1. Our objective is to describe system characteristics such as user friendliness by providing examples of systems that exhibit such characteristics. 2. The computer recognizes a pattern and generates rules for what a user friendly system, for example, would be. 3. This is possible because computers are able to provide imprecise solutions to problems. 4. We have demonstrated the feasibility of applying rough sets/rough mereology to the problem of systems requirements systems.