| 365 | | lid4 = sourceLogic cid2 |
| 366 | | in if language_name lid1 == language_name lid4 then do |
| 367 | | (sign', _) <- coerceBasicTheory lid1 lid4 "extractModel1" (sign, []) |
| 368 | | (sign'', sens') <- extractModel cid2 sign' pt3 |
| 369 | | bTh <- coerceBasicTheory lid4 lid1 "extractModel2" (sign'', sens') |
| 370 | | return bTh |
| | 365 | lid3 = sourceLogic cid2 |
| | 366 | in if language_name lid1 == language_name lid3 then do |
| | 367 | bTh1 <- map_sign cid1 sign |
| | 368 | (sign1, _) <- |
| | 369 | coerceBasicTheory (targetLogic cid1) lid3 "extractModel1" bTh1 |
| | 370 | bTh2 <- extractModel cid2 sign1 pt3 |
| | 371 | coerceBasicTheory lid3 lid1 "extractModel2" bTh2 |