| By: |
THEN All (Unfolds [`ma-compatible`;`ma-frame-compatible`;`ma-sframe-compatible`]) THEN All (Unfolds [`ma-compatible-decls`]) THEN All Reduce THEN Unfold `guard` 0 THEN SplitAndConcl THEN Try (BackThru Thm: fpf-compatible-join THEN Complete Auto) THEN Try (Complete ((Auto THEN Inst Thm: fpf-compatible-triple [Id;IdDeq;ds;d1;d3] ((THEN ((Inst Thm: fpf-compatible-triple [Knd;KindDeq;da;d2;d4] ((THEN ((Try (((Unfold `fpf-compatible` 0 THEN DupHyp -1 (((THEN (((RWO (((Thm* (((Thm* x (((-1 (((THEN (((RWO (((Thm* (((Thm* f (((0 (((THEN (((SplitOnConclITE (((THEN (((SplitOrHyps (((THEN (((AllHyps ( (((THENL ((([Id;Thin -1;Id] (((THEN (((HypSubst -1 0 (((THEN (((Try (Fold `member` 0) (((THEN (((Try (Analyze 0 THEN DoSubsume) (((THEN (((Try DoSubsume (((THEN (((Try (Unfold `ma-valtype` 0) (((THEN (((Try ((((BackThru ((((Thm* (((THEN (((Try ((((BackThru ((((Thm* ((((Thm* g (((THEN (((Try ((((BackThru ((((Thm* ((((Thm* f (((THEN (((Try ((((BackThru ((((Thm* ((((Thm* f |
| 1 |
2. da : a:Knd fp-> Type 3. init : x:Id fp-> ds(x)?Void 4. pre : a:Id fp-> State(ds) 5. ef : kx:Knd 6. send : 6. kl:Knd 6. kl:Knd 6. kl:Knd 7. frame : x:Id fp-> Knd List 8. sframe : ltg:IdLnk 9. Top 10. d1 : x:Id fp-> Type 11. d2 : a:Knd fp-> Type 12. i1 : x:Id fp-> d1(x)?Void 13. p1 : a:Id fp-> State(d1) 14. e1 : kx:Knd 15. s1 : 15. kl:Knd 15. kl:Knd 15. kl:Knd 16. f1 : x:Id fp-> Knd List 17. s2 : ltg:IdLnk 18. Top 19. d3 : x:Id fp-> Type 20. d4 : a:Knd fp-> Type 21. i2 : x:Id fp-> d3(x)?Void 22. p2 : a:Id fp-> State(d3) 23. e2 : kx:Knd 24. s3 : 24. kl:Knd 24. kl:Knd 24. kl:Knd 25. f2 : x:Id fp-> Knd List 26. s4 : ltg:IdLnk 27. Top 28. ds || d1 & da || d2 28. & init || i1 28. & pre || p1 28. & ef || e1 28. & send || s1 28. & frame || f1 28. & sframe || s2 29. 29. (kx 29. ( 29. ( 29. ( 29. (2of(kx) 29. & (kx 29. & ( 29. & ( 29. & ( 29. & (2of(kx) 30. 30. (kl 30. ( 30. ((tg 30. ( 30. ( 30. ( 30. (<2of(kl),tg> 30. & (kl 30. & ( 30. & ((tg 30. & ( 30. & ( 30. & ( 30. & (<2of(kl),tg> 30. & ( 30. & (deq-member(KindDeq;1of(kl);sframe(<2of(kl),tg>))) 31. d3 || ds & d4 || da 31. & i2 || init 31. & p2 || pre 31. & e2 || ef 31. & s3 || send 31. & f2 || frame 31. & s4 || sframe 32. 32. (kx 32. ( 32. ( 32. ( 32. (2of(kx) 32. & (kx 32. & ( 32. & ( 32. & ( 32. & (2of(kx) 33. 33. (kl 33. ( 33. ((tg 33. ( 33. ( 33. ( 33. (<2of(kl),tg> 33. ( 33. (deq-member(KindDeq;1of(kl);sframe(<2of(kl),tg>))) 33. & (kl 33. & ( 33. & ((tg 33. & ( 33. & ( 33. & ( 33. & (<2of(kl),tg> 34. d3 || d1 & d4 || d2 34. & i2 || i1 34. & p2 || p1 34. & e2 || e1 34. & s3 || s1 34. & f2 || f1 34. & s4 || s2 35. 35. (kx 35. ( 35. ( 35. ( 35. (2of(kx) 35. & (kx 35. & ( 35. & ( 35. & ( 35. & (2of(kx) 36. 36. (kl 36. ( 36. ((tg 36. ( 36. ( 36. ( 36. (<2of(kl),tg> 36. & (kl 36. & ( 36. & ((tg 36. & ( 36. & ( 36. & ( 36. & (<2of(kl),tg> | 1 step |
| 2 |
2. da : a:Knd fp-> Type 3. init : x:Id fp-> ds(x)?Void 4. pre : a:Id fp-> State(ds) 5. ef : kx:Knd 6. send : 6. kl:Knd 6. kl:Knd 6. kl:Knd 7. frame : x:Id fp-> Knd List 8. sframe : ltg:IdLnk 9. Top 10. d1 : x:Id fp-> Type 11. d2 : a:Knd fp-> Type 12. i1 : x:Id fp-> d1(x)?Void 13. p1 : a:Id fp-> State(d1) 14. e1 : kx:Knd 15. s1 : 15. kl:Knd 15. kl:Knd 15. kl:Knd 16. f1 : x:Id fp-> Knd List 17. s2 : ltg:IdLnk 18. Top 19. d3 : x:Id fp-> Type 20. d4 : a:Knd fp-> Type 21. i2 : x:Id fp-> d3(x)?Void 22. p2 : a:Id fp-> State(d3) 23. e2 : kx:Knd 24. s3 : 24. kl:Knd 24. kl:Knd 24. kl:Knd 25. f2 : x:Id fp-> Knd List 26. s4 : ltg:IdLnk 27. Top 28. ds || d1 & da || d2 28. & init || i1 28. & pre || p1 28. & ef || e1 28. & send || s1 28. & frame || f1 28. & sframe || s2 29. 29. (kx 29. ( 29. ( 29. ( 29. (2of(kx) 29. & (kx 29. & ( 29. & ( 29. & ( 29. & (2of(kx) 30. 30. (kl 30. ( 30. ((tg 30. ( 30. ( 30. ( 30. (<2of(kl),tg> 30. & (kl 30. & ( 30. & ((tg 30. & ( 30. & ( 30. & ( 30. & (<2of(kl),tg> 30. & ( 30. & (deq-member(KindDeq;1of(kl);sframe(<2of(kl),tg>))) 31. d3 || ds & d4 || da 31. & i2 || init 31. & p2 || pre 31. & e2 || ef 31. & s3 || send 31. & f2 || frame 31. & s4 || sframe 32. 32. (kx 32. ( 32. ( 32. ( 32. (2of(kx) 32. & (kx 32. & ( 32. & ( 32. & ( 32. & (2of(kx) 33. 33. (kl 33. ( 33. ((tg 33. ( 33. ( 33. ( 33. (<2of(kl),tg> 33. ( 33. (deq-member(KindDeq;1of(kl);sframe(<2of(kl),tg>))) 33. & (kl 33. & ( 33. & ((tg 33. & ( 33. & ( 33. & ( 33. & (<2of(kl),tg> 34. d3 || d1 & d4 || d2 34. & i2 || i1 34. & p2 || p1 34. & e2 || e1 34. & s3 || s1 34. & f2 || f1 34. & s4 || s2 35. 35. (kx 35. ( 35. ( 35. ( 35. (2of(kx) 35. & (kx 35. & ( 35. & ( 35. & ( 35. & (2of(kx) 36. 36. (kl 36. ( 36. ((tg 36. ( 36. ( 36. ( 36. (<2of(kl),tg> 36. & (kl 36. & ( 36. & ((tg 36. & ( 36. & ( 36. & ( 36. & (<2of(kl),tg> | 5 steps |
About: