{"_id": "8FmQ9PNWT2SXncTxX", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5eT7wTw5kT8DwTbu2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 21:54:33"} {"_id": "MNegade3hLiutxCru", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "cjK4u23ZAfYm8fatA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:06:22"} {"_id": "jkGrShmYcgR9kXb6s", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | eventually f in f.link implies f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "W9XgvTM6BzKHCBgec", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:32:44"} {"_id": "pBuL7LBbfsv5tzDQP", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "D6A3Qqt4ud9WQikuW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:35:34"} {"_id": "y6m4nbokKECugXfFx", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always ((Protected & Trash) not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "93FzA25jWwHGRyAsM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:27"} {"_id": "yJZFm5FnH5e5YC8z7", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n eventually some f:File | always f not in File' \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "truQ3FphKdZ3a7fHE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:12:32"} {"_id": "CCt6wniT5St2hKKFr", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tTrash = no Trash\n \tProtected = no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:48:50"} {"_id": "Diob2JCh9yei4Cp5J", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wmYg29YhTsX9vAi3W", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:59:00"} {"_id": "P3gFuEkajduWTyFeo", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways ( Protected not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6YmxWkc8PtXEqdafi", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": []}, "nodePositions": {"File0": {"x": 698.65625, "y": 199}, "RejectedBySolution": {"x": 349.328125, "y": 199}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-10-31 11:47:23"} {"_id": "fHDafwvCS4AshrBh9", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | allways f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KxwvMZXGbh8kMTFWa", "msg": "The name \"allways\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:18:20"} {"_id": "6gmZ7uRspZ4FTunic", "cmd_i": 16, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f not in Trash and eventually f in Trash implies f after f not in File''\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AyfTAAgzQjuNiZyPj", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:38:41"} {"_id": "rQ4HPkQawLrfmqZJw", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rgfnuu857wRHv3gcW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:36:08"} {"_id": "6yn7w69YYZE8t9xct", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \tsome File\n\tsome f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tRDzp7vDNnPepbprn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:07:24"} {"_id": "Py9A5FZbSqyqkbSF6", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tFile in Trash implies always File in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qZqoFARdavvuW7wFF", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:55:54"} {"_id": "yQFQAnD8SRa5ERwYP", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:File | eventually File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mJ7wH9yLtT8Lka7vb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:03:20"} {"_id": "THfBPpurmaW3SXBin", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bqjsxWAX8RSSmRT3M", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:01:57"} {"_id": "cMj7XXp53frTZ6EuL", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\talways all f:File | eventually f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fQqGJyNkMGfSfDHLn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:32:13"} {"_id": "rEz3ypZNstqjNt8rY", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iouSeA4cuf6NYzog8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 14:38:22"} {"_id": "dYgneQspx2CYwhpmM", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9dZ2znCXXNabgWg3s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:11:51"} {"_id": "nyN4D6SYoAJsGKZPP", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all not File & Protected\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TKhZNzH3MvD5qNutv", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:41:38"} {"_id": "gNdhwwqExekz3Jt8i", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "C2WQS7Q5isAXBacMt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-6 11:03:14"} {"_id": "AGx5GwqXg5xGf9rf5", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Protected and f in Trash implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p:Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2rE2JTdLbFKNpbFWY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 01:01:47"} {"_id": "AjyECuvJYf3nuNYFx", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vCrtgeqScz5HoHNJE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:38:25"} {"_id": "RR9Y7tChBAnyQkQdg", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "adM8qe42XjJ9tgpJP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:02:58"} {"_id": "A4H8pdg3JYj7v5TkM", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gNDGkf2qSXzGanth2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:17:14"} {"_id": "QukZCnwFMCKTdFe4Q", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DLQ9y3jdm49F59zpj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:32:45"} {"_id": "LxQrAxfnkjmYte9Yq", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n all f : File | once f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FGMafgppRAywLbTjG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:59:41"} {"_id": "wFTJJa6xjrWSLHE9K", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tall f:File|eventually f after f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash implies always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "csn9GWeA8KAXqdD8q", "msg": "This expression failed to be typechecked line 41, column 13, filename=/tmp/alloy_heredoc8915283517889765145.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:01:15"} {"_id": "CdTzoJxxiKvgiiCmT", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | after Protected' = Protected + f\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PLGTpdePL4dNSihy6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:45:33"} {"_id": "49MJQbS6SitmafKXY", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vy6CXaJzwWvpBa8MH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:36:08"} {"_id": "FKBGJpDvjDkrxRbvx", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | f.link implies eventually f.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5iFdhhFELT5o9gndY", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:01:39"} {"_id": "pPg5J6Lo5oNoPdwru", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually always some f : File | f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8cbPbz277weaeondP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:02:59"} {"_id": "KDmYKRCnoxSt5QptB", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f,g: File| f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wbwF4otQQ5YCPe5cc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:28:37"} {"_id": "tsJuZhvRxL6BFN2cs", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7Y2G9XAn4c6XjSCu6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:51:57"} {"_id": "v69iisSrCx76f6Rsv", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JLDzj9SbdPKjWr9Qz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:46:17"} {"_id": "EXBNtqxMn6BzrnDBH", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash since f not in Protected\n}", "derivationOf": "rKyh7nKkxyjbAt5Jq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:34:44"} {"_id": "o7MJDnzoCTDTeSyb2", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5kRcDZ5dp87nycpfW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 18:39:39"} {"_id": "w7hDXrSYsBTQE4krr", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in f.link implies f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fTNafCfF2w3uyDRZQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:41"} {"_id": "mzK2WTXWungb4qdpF", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all t : Trash | t in Trash since t not in Protected\n}\n\n\n\n\n\n", "derivationOf": "HgqpbHM6omH4kx8Nf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-20 12:05:05"} {"_id": "3SZKcLHP66GwamLYf", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t eventually (some f:File| f in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LwSqDKqCJ8jRCRhec", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:13:10"} {"_id": "QSe74r7is3KwdXz6Y", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | (f in File) after (f not in File))\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dYyED3T7AHpqhYxXi", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:06:15"} {"_id": "KkhHRkGydBwjpqn22", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n all f:File | f in Trash and always f in Trash' \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5NLzgQYXu8CGZsPMu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:31"} {"_id": "o6Enqj4XpQW4xgjSE", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all p:Protected | always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JMw3PowoJYtrxRG2Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:42:44"} {"_id": "3mGqYrJpBk9Mupmzt", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p in Trash implies p not in Protected'\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "hWcDojJv7vWBQQ5mM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:11:00"} {"_id": "A4gTX7y6JKk8p9g97", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash )\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "r6ypjeG2YHWYpzg8C", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:21:10"} {"_id": "TkuC5aPQjMaD9wZDQ", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n f in File\n Trash' = Trash + f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Kh6Fx7pArG6NjaEB8", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:02:02"} {"_id": "veqTX5PLhfCEPQZTh", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1.link = f2 implies eventually f2 and f1 in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "pg9iQ6PPJ6AaAZJC4", "msg": "This expression failed to be typechecked line 56, column 47, filename=/tmp/alloy_heredoc5552403819590535632.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-6 11:33:12"} {"_id": "ZtxuD4Fgc37GsJDpG", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (all f : File | f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8WfMzTvFcjT92DAoR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:16:21"} {"_id": "4NuNLyW8CvE7nuRyt", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\teventually all f : Protected | f in Trash and f not in Protected until f in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7hFQtsoEPB6LbdBzM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:12:04"} {"_id": "8Kd93THv96QM5NaMK", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File in Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pS26zPc6zf3xerAd4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:53:02"} {"_id": "YttAicfP4oK5AzaiF", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f : Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xMoJRmXBvjjLen3oL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:57:42"} {"_id": "iv8JQ3fuWE2t7Pnp8", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Lr5hMdtjdYgosSXrq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:34:26"} {"_id": "sZ6K4wWHzvzmr83og", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (some f : link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "X27W7EoiYrirNcgNb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:22:20"} {"_id": "fdw8usza7C75rjjTy", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pPKgA5xWwz6FNE442", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:41:25"} {"_id": "vvY5jLXTr5fa2fk5z", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways some f : File | always f in Trash implies once f in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LK7dKw7ZDCCZoms9j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:28:04"} {"_id": "x3W7G5xfQSywFEhEf", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1.link = f2 implies eventually some f2 & Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MeYBkD5WuFCEBwonb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:34:58"} {"_id": "Z2ec4Mxgj5oF7FZsC", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually some f:File | f not in Trash implies always f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "g3naLQH8JcBg2ox7G", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:08:24"} {"_id": "58S5bKtyvxXJQttT5", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | always f in Protected \n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xxfStMNvsEw6WQcTn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:49:59"} {"_id": "8vgq8jNWE4tKjhYJ5", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (\n \tall f: link.File | eventually f in Trash \n )\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (\n \tsome f: Trash | always f in Trash\n )\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (\n \tall f: Trash | once f not in Trash\n )\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9iJJJS2Dx7yMf4LvZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 23:22:35"} {"_id": "MdqsZM8mDYsMvxzds", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\teventually all f:File | f not in Protected after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mtnCePAxwkfjYyKRi", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 17:38:33"} {"_id": "iouSeA4cuf6NYzog8", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always (all f : Protected | f in Trash until f in Protected)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aEvZN8GyoPTBQ8c77", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 14:27:47"} {"_id": "bcmbgX7ZecHAvaiEB", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n \t \n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aBQXdmcJarv4sxnjv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:59:07"} {"_id": "x8eauYSyoxcWok2k6", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6F4dYJTR9YYZXvthB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 18:46:38"} {"_id": "sef9QCR7RXhDBLaLR", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually some link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "avenjyP6Xrf3thZfR", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:21:42"} {"_id": "GvgH7K9hhKMDaDW7W", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1.link = f2 implies eventually f2 +f1 in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "veqTX5PLhfCEPQZTh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 11:33:18"} {"_id": "Np76tkQ8XRyN38wmP", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "XRZAALrQeEpJtCjyQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:59"} {"_id": "RepBbvYku9gFjCqoo", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | f not in Trash')\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vpk7B27gkwScu37Bw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:39:25"} {"_id": "NoudCeRzTMk2XYeYw", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t all f:File | eventually f.link not in File'\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8m5hQx5wgMmByjRFJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:30:56"} {"_id": "2f4RoM4ALLZEehymh", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways after ((File - Protected) in Protected)\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "A2ige6mbXYD9LqpQi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:20:42"} {"_id": "Ga4Ls9o26RuzMxbj6", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bvhsiXPmMguMpLeFy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:41:18"} {"_id": "BEwT5DwkvwgHDZwjY", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ED2EwX68B4nwdmTGb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:16:02"} {"_id": "jWNmtr7QTDhvWzaHd", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "deXZJNB9Cozmsm6dH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-6 10:57:18"} {"_id": "SoMMWePSu8afRLDua", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "srx4x9QFJboJuEJp7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:30:30"} {"_id": "Rx7WSF7TCHSy7SJbG", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PoHTydG5YrvETJCKt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:48:09"} {"_id": "o4Pdy26hGoPBrmiQh", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all p:Protected | p in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HQbCKmYfWhWwAqsEn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-8 00:54:55"} {"_id": "JwXN4GKSp8scENe6L", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | f in Trash implies always f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "ZiBEoFNiwBCLkLb3w", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:02:43"} {"_id": "ZSvu8cJLxnj8DBPd8", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TfBfLuDvpt2XjMrEN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-29 17:47:35"} {"_id": "5Xpm6QxzyMBSsNj8B", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n some f:File | eventually f in Trash\n \n \n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DfxzKF7gbPyAkaXbP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:52"} {"_id": "tdByu76MajY4njqYu", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | f in Trash eventually implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rMWJxSoeWtsBuGvWE", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:14:35"} {"_id": "DcXTqWsL8WzbRTEms", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\t\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "x7mivsc8DzBFGmXAY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:15:33"} {"_id": "5sndij9W9M2MGhFbS", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f : File | eventually some f in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dhcjhCZqiEmKZxRxJ", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:18:53"} {"_id": "Nd9aaTsdTjJAzqyFm", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (\n \tall p: Protected | p in Protected until p in Trash\n )\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (\n \tall f: Trash | f in Trash since f not in Protected\n )\n}", "derivationOf": "nXSh6ym5FHHg33Gzy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-3 11:56:10"} {"_id": "fywZQfK9cxcWqvS2d", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | f in f.link eventually implies f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jkGrShmYcgR9kXb6s", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:32:57"} {"_id": "m2vFmD2izRcxgdRkY", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways (\n \tsome File\n ) \n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TWnMrBhHJobbkqx4Z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 18:39:16"} {"_id": "BGdSxexzyD7KHzjcQ", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f: File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\teventually (some f : File | f in Trash implies always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xDp77aXibiM3u9ddq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:42"} {"_id": "RNqLpNZZugTsGgkdu", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "j8eBHktt5ZbF8Bizo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:55:13"} {"_id": "HAKsJPTPXRKii7Q2n", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (\n \t\tFile != File' and\n \tFile' in File\n \t)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Pn7B9zR5eY8hh9yAr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:55:43"} {"_id": "sFL94joPERGbCRuQC", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:File | f in Protected' implies f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TNBxQ2JBp3QzBD4wN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:45:58"} {"_id": "zRxamj9XpATDrckN8", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways no Protected - Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "DNk2w7EsdQiQGAqpZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:52:35"} {"_id": "iLkXNS2inw7EFvbMd", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tf:File eventually not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3TpCXm7eCQAsLYFTq", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:00:53"} {"_id": "u8QjKvxnnDZqSNJ3E", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SpzyeKM5PSZhGFw8G", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:44:25"} {"_id": "srx4x9QFJboJuEJp7", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tf in File after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ee5SA6vhBKCiBsphS", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:30:02"} {"_id": "hoDo4AGdcDnQLvpE6", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mFrYuWm22inTiMPgv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:53:12"} {"_id": "G4RxRJCvSFPchevPN", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways some f:File | f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dx4idF2EDBFt6jHe2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:04"} {"_id": "QqtfZKuN9qtiuZG9L", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Hdxsz5pgKHDubyqa6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:49:11"} {"_id": "QDC93LqrJFso4C7Sz", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some File ) \n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XmWvrMuMGuPikf4wY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:02:12"} {"_id": "CZRh9SWXAYtdYPdLg", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n}\tno Trash+Protected\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \t no File\n \t next File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BMBK32BgYpc6CZoYh", "msg": "There are 5 possible tokens that can appear here:\nenum fun let open pred", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:53:44"} {"_id": "M5scCMiShnzaL5F58", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (all f : File | f in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "JwXN4GKSp8scENe6L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:03:22"} {"_id": "S2rKnFGwzfmT95ueW", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dYgneQspx2CYwhpmM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:12:25"} {"_id": "XnWCY5pguntPZLdy3", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in f.link implies f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:Protected | f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WwWgojCbcpxE8Dzdg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:26:29"} {"_id": "9o8Mfb2BTz3ahwc3c", "cmd_i": 14, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | f eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tqww6nYCZhhWtmaAb", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:35:30"} {"_id": "7bzRtPwEuMXKxkvD7", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f: File\n Trash' = Trash + f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aeMaqaA4cw4cyLn7x", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:02:27"} {"_id": "AJcCf6KWeaLX2WNSm", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RphjZFw522hZLzk5i", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:31:07"} {"_id": "MdZs9uee25QgFwvi7", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kb8KrpANCxg9XXcLs", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Trash:File"}, {"parent": "File", "type": "this/Protected:File"}]}, "nodePositions": {"File0": {"x": 546.2500305175781, "y": 99.58332824707031}, "File1": {"x": 364.16668701171875, "y": 298.74998474121094}, "File2": {"x": 364.16668701171875, "y": 99.58332824707031}, "RejectedByOracle": {"x": 182.08334350585938, "y": 99.58332824707031}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-10-31 11:48:12"} {"_id": "59bNTuzWFGpTyjS5W", "cmd_i": 17, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways ( all f : File |\n \t(once f in Protected) and f not in Protected implies (\n \tf once in Trash\n )\n )\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "s4TwTCFyGsapkt2QP", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-3 11:41:08"} {"_id": "C2EQQSvgJwHBRqZCZ", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Mg43ihRTaSvKZS6uY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:50:45"} {"_id": "RphjZFw522hZLzk5i", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\teventually all f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "F3gF7GQyte7spP3wa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:29:23"} {"_id": "f8Y89DN6b56MZJkan", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected and f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MkgbABfzxavzQs3Cf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:39:53"} {"_id": "bwskgC2ccKiRYj4qY", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \n always no Protected & Protected' & Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "58vBDczGa4ojSeCFf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:16:14"} {"_id": "eHRYmixC4DJNHTKnL", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\tsome f:File | eventually f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kZAiMBhFQcP4tMGNR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:58:32"} {"_id": "MWDKLbNE4zZMWJHjJ", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bg9TxRS4LB6BAS2bA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:29:20"} {"_id": "rwAKBXJD5gCoA9cxm", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f : File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "CtvWrnDLEhNqr5Bsx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:39:55"} {"_id": "baLfa5utchAB5WMgd", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (some f : File | some f.link implies after eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Zeq3wwipucLk4eaRD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:55:17"} {"_id": "fWKpSLkdPZPxkSoJe", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8KGv5F6b8ySPofNdJ", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 705.5906524658203, "y": 99.5}, "File1": {"x": 470.3937683105469, "y": 99.5}, "File2": {"x": 470.3937683105469, "y": 298.5}, "RejectedBySolution": {"x": 235.19688415527344, "y": 99.5}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-10-31 11:52:15"} {"_id": "v6NEfQeanjGnFoHQC", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in f.link implies f in trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "v8s8zHF23oXjYshoY", "msg": "The name \"trash\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:20:29"} {"_id": "5G4cp3MXzSzbvjc8h", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4YW5BDkNbk3dX6Wf9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:09:58"} {"_id": "cFEeySp7iXaJDrDLu", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways (all f : Protected | f in Trash releases always f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ff2eoxf9vNAg2zBMf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-3 00:12:51"} {"_id": "8ZwKCdrinEK2dCAgs", "cmd_i": 19, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:File | f no it Protected triggered f in Trash\n}", "derivationOf": "xCLiGAE7ntTB9N78J", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 21:49:56"} {"_id": "DozGu58fQ7WwSwM9r", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f: Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "2bBePWaem8xsJNksA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:47:08"} {"_id": "9LHrQWw9h3m8SpcbX", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DttMkdC55a3zn3JbM", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:03"} {"_id": "7QeF56MHmf2j78Kch", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "LEYxiEGCkfD9i4yML", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 20:21:02"} {"_id": "NhApmCACoQp7enygT", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n eventually some f:File | always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MFcffTYDjwed3qwLk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:21"} {"_id": "uBMTkJmKuW3jJqHu7", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hSDqCfRrhGdbswfrd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:53:49"} {"_id": "8D4hvDb6bgBsmZ4uD", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome File after eventually no File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "93HXbNoz2sJB8Hki9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:57:17"} {"_id": "jRJECz47kGdtS8awK", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zJkC3SifijEWBjg5X", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:31:25"} {"_id": "8KGv5F6b8ySPofNdJ", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Zd6gAjWtyGHZWT5zD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:52:04"} {"_id": "TXWGhCJrD5sSkCSrL", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WNZP4Rme4aoLvL4JS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:10:18"} {"_id": "ropwZCvArykyveBCP", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n some f:File | always f in Trash' \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "55tSmA4q8pCkjnzHz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:04"} {"_id": "sq5NAJhPiYb7bM7FB", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways some f : File | after f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vfR6wojSATiCrCWzi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:28:09"} {"_id": "T9CyzxdL5fQ3kc4w8", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fzZ6FHpHXBABdyPPM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:24:44"} {"_id": "nmxSzjNDW4FHzHPWN", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Protected and f in Trash implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p:Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p:Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Mm99CwJJJvbodrzRf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 01:03:55"} {"_id": "z838wA28tFe9WYbLT", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f,g:File | eventually f->g in link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QsGhbmqzdRXfFjBNo", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:31:42"} {"_id": "AQnDpEBacwaFGk2r3", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "r66QKZgiRWcxJkYtp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:44"} {"_id": "FXi5QPu6sjsfFxyNB", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pA7hu5GzkHQmHZGjr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:50:41"} {"_id": "xehHKpnCGwwG3RgM7", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways some f:File | (f in Trash and f in Protected) implies (f in Trash' and f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QGLH5FNXDeQz4TeHZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:49:06"} {"_id": "bQcXdGbhQt9GPBQkT", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File after (f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rKSD3ukGqeRYvtvsc", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:05:38"} {"_id": "R7Dt4kJSAY7xSq2ob", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f : Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "R7XheFZEoDRTwb4Y7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:35:27"} {"_id": "uMqqyzbh9Ducnfzeh", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n some f:Protected | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YpiEXkwuoGwbDfgzW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:50"} {"_id": "fAyxEzSrte5X3cQpi", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "idPRg7Nbqw2Ze72ys", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:08:57"} {"_id": "NFQtnxhjA6eshq2q8", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\talways all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SoMMWePSu8afRLDua", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:31:02"} {"_id": "FEq92cytaDrb9zNYK", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f:File\n Trash' = Trash + f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7bzRtPwEuMXKxkvD7", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:03:23"} {"_id": "GBqKrzCKp2xJzzK7b", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (all f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dP5kzffh7iw4riDr8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 12:50:05"} {"_id": "YPWWvNPemRmKXvMfz", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (\n \tsome f: File | f not in File'\n )\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (\n \tall f: File | f in Trash triggered f in Trash\n )\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5jfGoyNCdqk5P4QAc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-2 18:45:03"} {"_id": "xrBGwePuyxSkq7qQ2", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f : File | eventually File = File - f \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4ujAEHWuxoL6jY29f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:51:03"} {"_id": "Pv5GEs9j3hfZ2zEJw", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:Trash | f always in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qRp9LYxssp7zfjT8j", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:13:34"} {"_id": "XwMSGNFsTL28KgBMz", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \teventually always all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bCuL2wqJK9khxz7Pr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:15:42"} {"_id": "TfxSPxmuhnZMqT6vY", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always Protected & Protected' not in Trash'\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9pLKmNZC4etcMkeyd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:55"} {"_id": "HeSnqHNDLE4oqPgRn", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f: File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways ( some f : Trash | always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BGdSxexzyD7KHzjcQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:26"} {"_id": "yPXQm7nZXTjoirQrF", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually all f.link in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FTS4qRF5DAYyn4Ppi", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:35:28"} {"_id": "mXiGDNPBL3GjbYnZG", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1,f2 : File | f1 -> f2 in link implies f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "cBqRri8nZR6NoNwWb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:42:09"} {"_id": "u3QDCPry22LE49Ri3", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1.link = f2 implies eventually f2 & Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5LwJjMijE7wgX2Ew2", "msg": "This expression failed to be typechecked line 56, column 47, filename=/tmp/alloy_heredoc11976659596596562167.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:33:48"} {"_id": "5TiY3wHZs8xKPEfkb", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all f:Trash| f in Trash') \n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash' and historically f not in Trash)\n \t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KM9jNZWwMywpGYES7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:27"} {"_id": "c9F7REYrvZFWoxoJk", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4vnz5pEgzbEKP8iYf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:24"} {"_id": "2spJpP9XvE7s3rFo8", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n \teventually all f:File | f in Trash implies f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\t \t\n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DxEyQKAQZpWYg4HuP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:29:06"} {"_id": "HPBve2KYXeoBekWBR", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n some f:File | f not in Trash implies eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cjWJdCCF5FSLMT6rX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 21:40:58"} {"_id": "dRzjErqvbqP34t65a", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Qmhf7ed538YzfkB3A", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:46:36"} {"_id": "sFweK3s7qY7e5vRx5", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \teventually some f:File | f not in Trash implies f in Trash since f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YeMGkZWbb7XtzcWST", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:35:47"} {"_id": "Z43Es4gtTASkqk6DZ", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies always f in Protected and f not in Protected implies always f not in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eD4exiXzkcW933Spm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:45:56"} {"_id": "Rykvs47eaXFMRSoPr", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n some f : File | eventually ((f not in Trash) and f in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2YEPgmcbg9WPCs4Y4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:48:15"} {"_id": "9fm5gvWbokWhpBKqB", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "G6orGemBdZAkYe4Dr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 20:22:49"} {"_id": "JMw3PowoJYtrxRG2Y", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all p:Protected | p in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rJ2KiWow3kuYxcZop", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:42:31"} {"_id": "FQ2a6Hfv94ki8jWo4", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\talways (no File and no Protected) \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:45:40"} {"_id": "WdJYP2PLvvKYX5jhZ", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually( some File' in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CqnmMPZ2MSdL8wWCG", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:04:54"} {"_id": "855829Kr2cvuMTcdX", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "X8wgBm8EmY8HAmzy9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 21:03:12"} {"_id": "TMfyk88J5EYF3AoiC", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\t \t\n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8LB8dF8g85LjQpCGh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:32:20"} {"_id": "B3TcLpqzsgAqswZef", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f, g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \talways Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AKaF6n2H2BgqyLrR3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:49:18"} {"_id": "pB7zcArzAL296ErYu", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hDwYrDyoQi9btn4Yx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:49:57"} {"_id": "9F5LkWRH8RgbKEsmP", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually ( some f:File | f' in Trash')\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "75h9om7qDeQqKSB2L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:17:19"} {"_id": "m8jyysBGH3pWr3soi", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually File.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "K8MmycubhbXWjc7aJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:25:39"} {"_id": "SMmzCc8j46DAZBeYL", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n \teventually all f:File | f in Trash implies f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QxzuNvMxDBYNeyHKc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:26:10"} {"_id": "tLQ54wjBvLigTpjXG", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Af5JJu77fAMFkG6Aa", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:40:45"} {"_id": "avenjyP6Xrf3thZfR", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EG5tZo4etux2meYBP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:20:56"} {"_id": "FtobrDiqMwRtcZhfp", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mXdvqx7g7hdGmP2td", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:34:55"} {"_id": "x28fYYTNwYqy8cgBd", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:26:01"} {"_id": "RCXncn6hZ9wGb5McQ", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all l:link | File.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RMk7JqdQxmtPpKqqo", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:20:13"} {"_id": "vG8zTNQcNw2qR9M6q", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | eventually\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sq5NAJhPiYb7bM7FB", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:30:09"} {"_id": "t3kdtA8kbfhPtyN7K", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always f:File | f not in Protected implies f in Protected'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2oFHpXybWYHYp94WS", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:03:39"} {"_id": "NK9WbDbPs2XRXw8Xo", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash triggered f not in Protected \n}", "derivationOf": "iiRMTNBjJfNNXgHP2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 19:18:52"} {"_id": "GzJcESMa38PFCXesy", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (Trash' = Trash + (File' - File))\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Fso6N7zAB8MDhroMN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:07:27"} {"_id": "MkgbABfzxavzQs3Cf", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ENyhGtLJ5o7MG4ABT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:38:44"} {"_id": "KufgvuaM4RinEFWcP", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ucejabKiWj2eeHcfc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:32:25"} {"_id": "uX995LQFNxRvnX5CC", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (always all f:File | f not in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jPzoJfNh2ZaAbyMmp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:51:49"} {"_id": "4shgL32jrPZqxggkS", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : Trash| File' = File - f and Trash' = Trash - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "baCPqki3rCxtALybc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:58:14"} {"_id": "f7tqaM4yYhMtthbbG", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sFweK3s7qY7e5vRx5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 22:36:58"} {"_id": "meq3n8z5dMuLbpbyG", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f not in Protected until f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GhRTdHkKcjDnovqEx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:51:45"} {"_id": "9hDaj48rAFmn6tCYi", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g: File| f->g in link implies eventually always f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7frH28yQHsJtwe4Jx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:29:43"} {"_id": "F7owei4fZuu68NJf6", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QqtfZKuN9qtiuZG9L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:49:21"} {"_id": "DzmkfBsnQCpc3gBqp", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tMWGrRkotYudAFPEn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:41:25"} {"_id": "rTBPEgkhmmEdiFtq9", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some File\n \tafter some (no File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9HprhBDHq5TX9Axd6", "msg": "This expression failed to be typechecked line 45, column 10, filename=/tmp/alloy_heredoc10225367734390404313.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:03:31"} {"_id": "LK7dKw7ZDCCZoms9j", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | (always f in Trash) implies once f in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CF775bN4q9xe3HisD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:27:45"} {"_id": "CWJpZDsJppnKeABjj", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vijahzyogXPZjm8er", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 21:32:14"} {"_id": "WnvMoLtHeKBAowFST", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all p:Protected | always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "snh4vNTWEtkJdht7Q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-8 00:55:23"} {"_id": "TmGTCkQeXwWGKfdbG", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | File' = File -f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mXhuZhL8LZhQXmJoP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:50:52"} {"_id": "yjdexYq3KxqZn3YeR", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | (f in Trash) implies always (f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "EWr3eS7JpYe8dYAZ4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:11:18"} {"_id": "NWA228XiePWfPLiTM", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LLQHqGYaE9p2ru7GS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:26:47"} {"_id": "TH6j6gftwzvaJGhRr", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\tsome Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xQhbKMoNqK5cfdLDm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:50:52"} {"_id": "9dZ2znCXXNabgWg3s", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\tsome Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7bETue2s7H8iAkQGo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:11:42"} {"_id": "JCzZ6wk2sT4vGj86e", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n\talways all f:File | f in Trash implies f not in File' \n \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \n \talways all f:Protected | f in Trash implies f not in Protected'\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "abiy4kr84tdGuKJur", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 21:11:39"} {"_id": "whGrktACHQ3doKXQu", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WnYPKiWCy3ysjjh9x", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:10:46"} {"_id": "vfR6wojSATiCrCWzi", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | after f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "E4Yrac9EytL9PvjQM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:27:05"} {"_id": "m8QapyZSBd7sH8vkx", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dx3Gqg4mTJEgbBwFr", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:13:02"} {"_id": "GhRTdHkKcjDnovqEx", "cmd_i": 17, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways f : Protected | f not in Protected until f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SLK52j8bQ3XJofupw", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:51:34"} {"_id": "4nMxcCmCLrT4JrCSH", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tall f:File | eventually no f & File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:File | f in Trash and always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MvbnsywSxf4E5HBor", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:01:59"} {"_id": "87DM32y6RwznYibg8", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (eventually File in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jWNmtr7QTDhvWzaHd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 10:57:35"} {"_id": "fLwYzAA6siv5E798E", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TXbeLRkQLnoso66QC", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-11 21:49:48"} {"_id": "77xWXRMXv2RnLiz2L", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f not in Protected\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DMZZ9c6xDfwwL44ju", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:55:42"} {"_id": "XeXKoQ3nY2ozkQfQ6", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \teventually always all f:File | eventually f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fnJzrrpcj6umPDv5Z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:12:47"} {"_id": "4pzNyA8WGbkL8Pque", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GR3gHn8yGEGzBBs2R", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 17:35:44"} {"_id": "iiRMTNBjJfNNXgHP2", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f not in Protected triggered f in Trash \n}", "derivationOf": "8fiBDCMZ7G67WyHgR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 19:11:09"} {"_id": "dT5zBEXPe9pNyb4fk", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | after f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DG9scczEGS8indPoG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:24:36"} {"_id": "YpiEXkwuoGwbDfgzW", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n some f:File not in Trash | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wFYFXCnPpHcmnqffH", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:22:08"} {"_id": "rmF6ZHHvcvMitEw99", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | always f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8pJ8GP59vNfMbRdMD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:16:17"} {"_id": "RD4wAHva56x7KdpGw", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall f:Protected | always f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GtvxhPD9Qrcr2jecT", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Trash:File"}, {"parent": "File", "type": "this/Protected:File"}]}, "nodePositions": {"File0": {"x": 444, "y": 318.4}, "File1": {"x": 592, "y": 79.6}, "File2": {"x": 444, "y": 238.79999999999998}, "RejectedByOracle": {"x": 296, "y": 79.6}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-10-31 11:48:00"} {"_id": "cHKu95qPkdjrCYwvA", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies always f in Trash\n \t\n}\n\n// some file will be protected\npred prop7 {\n\talways some Protected or\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pnHrHQXPSuBD5JKkh", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:18:53"} {"_id": "BGnWsiJhqWwaYPo7G", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PnWY4KrquTCmEQPYs", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}]}, "nodePositions": {"File0": {"x": 400.53125, "y": 159.35999755859376}, "File1": {"x": 534.0416666666666, "y": 79.67999877929688}, "File2": {"x": 400.53125, "y": 318.7199951171875}, "RejectedByOracle": {"x": 267.02083333333337, "y": 79.67999877929688}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-10-31 12:59:24"} {"_id": "MZxn5EwrHySN2EfSw", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f not in Protected since f in Trash \n}", "derivationOf": "oMYPKYTeiKWfgRhiS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:38:19"} {"_id": "JsR9gbeqD5oKQk7xy", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | f in Trash, always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Kw9iqgge8aAj8vHx7", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:14:09"} {"_id": "dYyED3T7AHpqhYxXi", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | (f in File) after (f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bQcXdGbhQt9GPBQkT", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:06:05"} {"_id": "aYp3QPHG5zC2PRyon", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tafter (all f : File | f in Protected)\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5sffaKwoN4J7qJFgq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:18:10"} {"_id": "yQ5vHke4QuPdFXwH2", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "J65cXNSZbfwi2gnw7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:25:16"} {"_id": "Wp65XgLwyLp8wR6jx", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ym7SGD3bMh7isWsnR", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 534.0416666666666, "y": 79.67999877929688}, "File1": {"x": 400.53125, "y": 318.7199951171875}, "File2": {"x": 400.53125, "y": 239.03999633789064}, "RejectedBySolution": {"x": 267.02083333333337, "y": 79.67999877929688}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-11-6 11:10:36"} {"_id": "LLvqoWYsAacXzPmuM", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \talways all f : Protected | f in Trash until f not in Protected\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CZJvTtR5CJGejS558", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:19:53"} {"_id": "4FvTJPeBqtgssKtir", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File) implies File' = File - f\n \t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Br5a6azREg7yJH9Mo", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:04:25"} {"_id": "LwSqDKqCJ8jRCRhec", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t eventually (some f:File in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LAj3bKLMb8aaprYuR", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:12:51"} {"_id": "44LMNyXGF8Xu6iwT5", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways Protected not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vdXvCbMtfdmETZSyN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:31:56"} {"_id": "s7nRD8kGWzYtfKL4t", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tpred1 && (some File after no File)\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7Y6ChH9wf3Emo5fkv", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:51:25"} {"_id": "wNPNhBGuWz6D2wcLH", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zF5nyeBH7Bpt3CEzS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:29:27"} {"_id": "WqQ4vxJgvz2TbedhP", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f,g:File | some f->g in link implies eventually f in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rzDsJSnkD4eK3T492", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:36:14"} {"_id": "xPBXWd5vNipDjy3eB", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f, g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jTJusYPoX3nrufDu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:41:11"} {"_id": "mrc2QvS6Jkw8gmT4k", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WmztYCYqbrKhjpoKp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:42:35"} {"_id": "JPDY5qe3CWNtEKfbQ", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\tall t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "9wbGmWLJq6Syvgn8k", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:09:12"} {"_id": "4g5BodhQQs2J26z8q", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f,g:File | some f.link implies eventually f.link in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DkYZ27SE8yoEdFELe", "msg": "This variable is unused.", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:39:27"} {"_id": "4vnz5pEgzbEKP8iYf", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tznHNBkXmgACTPqSq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:21:13"} {"_id": "zQKBGXzhRKuMARrJp", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "H6xz8iqq48LaeaBvH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:08:06"} {"_id": "Fb5vJfk6pakrBWowW", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EPsK4nkDZ4Mb9TYoL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-9 05:00:23"} {"_id": "fjfotQGzXxNrbS3dF", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash since f not in Protected \n}", "derivationOf": "uCoaa22jujYxdr2ra", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:42:41"} {"_id": "MifgTPgwE4b4Wmb4i", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually all f : File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "4eme9srL2eEbi7D4S", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:14:39"} {"_id": "yCF2fie9XFFitiHMA", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n all f:File | always f in Trash' \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ropwZCvArykyveBCP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:08"} {"_id": "XSLWndYgpaqxKFSi7", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\n \teventually all f:File | f in Trash implies f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qGHKAkikk68BYnGMw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:20:02"} {"_id": "g3GQr2Se2b89oMNaH", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8nfajn8gYg7H6426r", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:38:03"} {"_id": "YZcNgLEDt3W4QvHvA", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\teventually (all f : Protected | f in Trash implies historically f in Protected)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gyZBRxr73NwGf3GS8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:14:34"} {"_id": "SQubfofrYi7faQXGA", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ezi9acqZSAC5vMSSC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:58:19"} {"_id": "nsG5AAdAfwcTk5NWg", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f.link in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4g5BodhQQs2J26z8q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:39:36"} {"_id": "FPXLXyapPzPAKbBnM", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected \n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6DT8oZjfkemKShrD9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:44:56"} {"_id": "YhkW4j8E2YhhJRSxc", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WCmW6XqHcDpTMcHzX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:39:39"} {"_id": "oydDnzRegYdYbMZg8", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash releases f not in Protected\n}", "derivationOf": "adf4qHKkg6BNExLtn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 18:36:25"} {"_id": "hkHzYCuKGompQE372", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (\n \tall p: Protected | p in Protected until p in Trash\n )\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (\n \tall f: Trash | f in Trash since f not in Protected\n )\n}", "derivationOf": "KmR5GZtkSyuNtoFXr", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 535.375, "y": 79.67999877929688}, "File1": {"x": 401.53125, "y": 318.7199951171875}, "File2": {"x": 401.53125, "y": 239.03999633789064}, "RejectedBySolution": {"x": 267.6875, "y": 79.67999877929688}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2020-1-3 11:56:05"} {"_id": "5Tj2bNEgdP2q5582v", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \tsome f:File | f in Trash since f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f not in Trash implies f in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SenDLvbNkYKyD9vRc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:31:11"} {"_id": "6RhM4tpczezaxMtEo", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some File in Trash )\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yJ64rn6jdPt42yxSG", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:48:12"} {"_id": "uSWrSu6metjLGNdqq", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PP9b2iBuf9YLnWH4r", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:16:03"} {"_id": "LKBqJYah6GjRSDZfr", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File' = File - (some f:File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Lktu6nMmD4QAjjQrj", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:06:31"} {"_id": "y5PDAJNAzhdT9NCEj", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "S98SJyf9YFsEC9Lrm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:30:33"} {"_id": "5rWMEicjejryTfnDE", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "P6vJmxESuSZGz3vqg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:40:08"} {"_id": "u33xebh2Gm83RLac5", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zQKBGXzhRKuMARrJp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:08:52"} {"_id": "nQ2gkczCMvNusttiS", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "x7TfW9MHDHY55YgsL", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:09:17"} {"_id": "hevSJmnouTvmEbXtM", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "e4Hv5hSeGnfL7sfHt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 22:53:00"} {"_id": "2gSsN8mzJZgXs8tAz", "cmd_i": 12, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f in trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nm5DwwJtYk9RrdGT5", "msg": "The name \"trash\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:26:48"} {"_id": "4GicwaeExTLrGvdrp", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\tProtected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Hqxarv8vTSSTuBmz9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:55"} {"_id": "pRuiwSxSu3QsyM8vw", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n always all f : Trash | f in Trash'\n \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FHdmar7PXTZL2SzMi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:20:48"} {"_id": "zyAZhtdrSbY5yAjNt", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : Trash | f in Trash since f not in Protected \n}", "derivationOf": "ewruHRmPmGRfg5tHG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 19:25:59"} {"_id": "sGbQJR8PgZeM7xXA8", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always Protected not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6T4J5EZFPWCn3gJrw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:49"} {"_id": "Hu9vcT9EEht6X3cRZ", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (some f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yNXxzRaXkgsRhCtHm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:12:13"} {"_id": "yLQJq38ZeGvp8oRSF", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:File | f not in Protected implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "x7FNKMzDWD4hhCMQv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:33:31"} {"_id": "JnSQ9G5jFfbaNp7tL", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "se8FtoMA6YA45RvS3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:12:52"} {"_id": "Ro4QjwgsZMwCFz82c", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4qRdrz9S7o8HTkukc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:34:12"} {"_id": "5KvP6jACktkcQi7Rz", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually ( some f:File | f in Trash)\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EQWiY4NBDKBuZyJS7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:21:26"} {"_id": "4AkbQdmD2Df4rnwZ3", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tsome File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SQubfofrYi7faQXGA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:58:26"} {"_id": "LWurofNZrP3hGwAYw", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | f in Protected until f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always (all f : File | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "D3hggGGtTwqjyYA6H", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:43:59"} {"_id": "58vBDczGa4ojSeCFf", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "beL3NDPugdLpzuTyX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:15:50"} {"_id": "tcBszuEZNvd2YQGmW", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "hhXH9pLi3qC6xBkwf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:12:04"} {"_id": "LYb5CN6Pa3efktobA", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always Trash not in Protected & Protected'\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TfxSPxmuhnZMqT6vY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:13"} {"_id": "q53qHWjamWo8TJxdu", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ec8crWQdLnHJ93GmC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 17:04:37"} {"_id": "CNR2eoKgyfzd7RE9D", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways some f : File | f in Trash since f not in Protected\n}", "derivationOf": "YaAvTgG6D5aQs743n", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:39:27"} {"_id": "riE34P3kv6GxqbFpd", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "93sHQr5gRNXay6sKR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:29:39"} {"_id": "TyfQDzD6r9PmmQ7hJ", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "T4mT6mcekxo8e549M", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:48:01"} {"_id": "Dx7bLPd2upJsCdPPf", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually all f:File |eventually f in Trash implies always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XfprEbzvE8DktQafo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:43:19"} {"_id": "S9MmbzgJvMdEvTFEk", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : File | before f in Trash implies File = File - f)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dBsEfrtNeSpRzKsCj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:37:19"} {"_id": "dyMpqnB9Rg629BzZa", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually(always some File' in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WdJYP2PLvvKYX5jhZ", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:05:09"} {"_id": "T56wqdvPj8XB4QRE2", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall f : Protected | f in Trash until f not in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "q53qHWjamWo8TJxdu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:08:37"} {"_id": "GCBrtYHMvAP5LjkqC", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall t:Trash | always ( t in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XX7mpztNhCiKrKNLv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:10:48"} {"_id": "5XbNYMgfk8DjXP3Ni", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome File\n \teventually some File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hZaFyNy3fenetzPpW", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:03:11"} {"_id": "q6GD5qbayuNB99un2", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : Protected | f in Trash since f not in Protected \n}", "derivationOf": "nBrqiXabtgbvKCt2k", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:53:18"} {"_id": "z2DQsqE6FustCZEYH", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f : File | eventually f in Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SsNi2WNShRPPnaudD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:47:20"} {"_id": "CtvWrnDLEhNqr5Bsx", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways eventually all f : File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "NLHyjuvkJAL8pmxhL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:39:33"} {"_id": "fTfTShW3nagvh2z8M", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies always f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Dx7bLPd2upJsCdPPf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:43:56"} {"_id": "rDqmTGno9Z7wNEcoX", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "g3GQr2Se2b89oMNaH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:38:09"} {"_id": "LzRTiEMR6dRwaXjcy", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:File |eventually f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NjxK9raWaNr8YjYqd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:07:48"} {"_id": "x8bgZjERfMmFhjpZv", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (File:>link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iypFgKvrKuaZZcf4o", "msg": "This must be a unary set, but instead it has the following possible type(s):\n{this/File->this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:05:52"} {"_id": "jYCGBFwiC7Ba5M9Sk", "cmd_i": 12, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (always some f:File | f not in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall File in Trash implies once File not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "L2qpQZtTHXgmcD4nn", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:55:14"} {"_id": "GR3gHn8yGEGzBBs2R", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MdZs9uee25QgFwvi7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 17:35:36"} {"_id": "hhXH9pLi3qC6xBkwf", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "D8mWBbB2FuLBuFPuA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 22:52:39"} {"_id": "6dLaQ8p8sKA8B2sYS", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JgxgNtJefcL5yNZdZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:59:45"} {"_id": "gT7RaFsbbERyhSwpT", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some link.f implies eventually f.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3KS9XkZjn4h6nhe5z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:04:51"} {"_id": "hDRk9T7dKBW28g5As", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually File.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "8Xg54Znk5zygoGY3x", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:28:26"} {"_id": "yJ64rn6jdPt42yxSG", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some File in Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iS8NEpjcdZQXcJCbH", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:47:35"} {"_id": "mtnCePAxwkfjYyKRi", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\teventually all f:File | f not in Protected after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yrCEXoaziKN6ZyacN", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 17:38:03"} {"_id": "c2RKogB8ur4D2mKK9", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some File in Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "S2r8kPNRe9oAPGbMv", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:54:37"} {"_id": "kG94Pog2gLwbhgv7u", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f : File | eventually f in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5sndij9W9M2MGhFbS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:19:02"} {"_id": "xrsG4CkM2mzYi2gdz", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pB4ZpdPPNGasraE7G", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-29 17:52:24"} {"_id": "Dvy4uE98ziHMBkq4Z", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f:File eventually f in Trash\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NCs6B9W6a4y3MQLMw", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:24:45"} {"_id": "rM7encnZLKMedjwW4", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always File in Protected\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8Wnfi7Te33BxXBbPr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:52:06"} {"_id": "vPLCXDJpYXJ6o25mZ", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "tcBszuEZNvd2YQGmW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:20:59"} {"_id": "Mj3MamYucLBRjioaq", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f : File | eventually (f in Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ChC7rkkyxtJq57P3b", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:08:37"} {"_id": "WCmW6XqHcDpTMcHzX", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | f in Protected implies historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FBF4HGwyuS6aCZu9C", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:37:44"} {"_id": "dBsEfrtNeSpRzKsCj", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : File | before f in Trash implies File = File - f)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2fHaZnuosKLZjMWet", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:37:15"} {"_id": "rKSD3ukGqeRYvtvsc", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qzEsSEGRKt4yyzon8", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:05:16"} {"_id": "KuZF57qcNf8L32rfe", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fK4sLyJgPZktWH4e8", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:59:19"} {"_id": "DLjFCYX8mWH6ogrGL", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t(not Protected) + Protected' = File\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vQAxgBb3F22X8m2j7", "msg": "This expression failed to be typechecked line 71, column 3, filename=/tmp/alloy_heredoc4707813200528660085.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:40:30"} {"_id": "HMsqQxFnCSHyM8hYJ", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ( ((File - Protected) in after Protected))\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4zAZiZrLFipAf5HFb", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:23:20"} {"_id": "TKhZNzH3MvD5qNutv", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "S6QvELCCmqLrbPAar", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:40:34"} {"_id": "MRAe5B6FA3KGt9vrG", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (#File' < #File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "P9bdxK3yoDg4gXAjH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:58:37"} {"_id": "AepzSGuZf8fhp8We8", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\talways all f:File | eventually f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cMj7XXp53frTZ6EuL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:32:46"} {"_id": "YSR8XE6Rzsv8xv6Cq", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways (all f : Protected | f not in Protected' implies f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hshLuxhpwufY4bWSd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:45:08"} {"_id": "x7FNKMzDWD4hhCMQv", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:File | f in Trash implies f not in Protected\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TGuMCpS5NJgowxJYA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:33:03"} {"_id": "v7ftRDxRSEB4M5GTA", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually no File \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash after f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xTpfycwJShqKRmnoa", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:05:57"} {"_id": "pA7hu5GzkHQmHZGjr", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HCBY8qjyEbHGRLkzy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:50:10"} {"_id": "T4mT6mcekxo8e549M", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zhTQGqfsMvxtx3C4Y", "msg": "This expression failed to be typechecked line 36, column 2, filename=/tmp/alloy_heredoc6843301351526393126.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:47:55"} {"_id": "55SGZFAGjYKJY8gzB", "cmd_i": 9, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "beoBFSvwvzmu4GL5S", "msg": "This expression failed to be typechecked line 66, column 2, filename=/tmp/alloy_heredoc17419360526641479486.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:52:59"} {"_id": "ccjxSTpicMzcQJssZ", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "b2i9HZdkf3HedkmNx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:28:18"} {"_id": "dWnWEGg6wTvnvkXFk", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) releases (f not in Trash) and after always (f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pSSippcxtpBrZbHi3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:26"} {"_id": "EYohLGMsPgxTnoZ9R", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "57tMghabS5MzZXpev", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 21:53:27"} {"_id": "x7TfW9MHDHY55YgsL", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eXHX9Ak3fvx8wFB6Z", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:09:06"} {"_id": "jBZj8RgyzWcPha7Pr", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in f.link implies f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:Protected | f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XEgzhuDSMpMgs4QpR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:25:24"} {"_id": "pZ55SCfnvnvxqBsSw", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall t:Trash | eventually always ( t in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GCBrtYHMvAP5LjkqC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:38"} {"_id": "xtG3dcW3cQEmFWvxL", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AuRh3t8nqWw6kF4rx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 20:37:03"} {"_id": "NJ8kPhn7A32ekGgTo", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome File\n \tno File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fB5KooaFARNNdDaF8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:49"} {"_id": "qcYo2BZ2gujSSQvXp", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually ( some File' in Trash')\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5KvP6jACktkcQi7Rz", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:21:58"} {"_id": "teMX2xY3uuJsM4Tmr", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\npred isLink[f:File]{\n\tsome g:File | g->f in link\n}\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | isLink[f] implies eventually f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "prtiMSYwgSfdyWs9K", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:38:04"} {"_id": "vdvi9mdLriQMJETkR", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some Empty\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5kvEJgMCWQBdDdxBs", "msg": "The name \"Empty\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:49:38"} {"_id": "e8fZnb5mMDhaigsMt", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (eventually (some link.File & Trash))\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XYPJmHykjA2mo7aug", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 12:28:43"} {"_id": "bgGKGr4T6fmFCevGD", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (File.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yjg3pxwTBEmfWgrtT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:08:37"} {"_id": "he4ae5rnZ9FxijMhh", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash \n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "L6wxFyTzbhpmckXc4", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:35:47"} {"_id": "5r5TfQRMh52wrAXfW", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:28:51"} {"_id": "szxFgJwhMaxWHDLYF", "cmd_i": 15, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nZS8shefa7NrzyYQj", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:59:30"} {"_id": "ybMr8nk7yp3wm4egq", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n}\tno Trash+Protected\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \t some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PALZHQ7TcdtBpmJgW", "msg": "There are 5 possible tokens that can appear here:\nenum fun let open pred", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:56:22"} {"_id": "Ym7SGD3bMh7isWsnR", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways (all f : Protected | f in Trash releases always f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gNdhwwqExekz3Jt8i", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 11:08:47"} {"_id": "vijahzyogXPZjm8er", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall f:File | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aRkzFMsXoXTZYr95A", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 21:27:20"} {"_id": "3bDNuX2HwRpvFR3TG", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File in Trash\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File in Trash implies always File in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5hftHhkbxHqMa63s6", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:27:37"} {"_id": "WwWgojCbcpxE8Dzdg", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in f.link implies f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jBZj8RgyzWcPha7Pr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:26:07"} {"_id": "PjjK6tBuzMnJWjdMh", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "tCbsKQ49P6twsLzwm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 20:20:33"} {"_id": "acYj6ktKSfhb2BTf4", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | File' = File- f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dZ67sNvryjEbuC27v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:06"} {"_id": "tBEDEdQB8yzMb7Hji", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CdTzoJxxiKvgiiCmT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:45:57"} {"_id": "om8hLues5RwQwfTHE", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:File | f in Trash and always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "opML5jHZNxnCGXEg6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:05"} {"_id": "xMoJRmXBvjjLen3oL", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n all f : Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TQ2M66AbXMArkXNs7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:57:18"} {"_id": "g3naLQH8JcBg2ox7G", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WpvfSi2M8aGw95Z2M", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 22:00:07"} {"_id": "zbNXRELL2v6LSKf9v", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected and f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XB2KEpPBkxozsG97j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:49:21"} {"_id": "djqW5sep4jm9SmwpN", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "BBxQAPTPCf67YrLBK", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 710.4, "y": 199}, "File1": {"x": 532.8, "y": 199}, "File2": {"x": 355.2, "y": 199}, "RejectedByOracle": {"x": 177.60000000000002, "y": 199}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-11-11 23:23:51"} {"_id": "4dfoKz92bcck6Srua", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after \n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eRPq4WFCD3Fj9pSi6", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:53:18"} {"_id": "fTNafCfF2w3uyDRZQ", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in f.link implies link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "queSmDyZsr8DrmiKD", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:21:34"} {"_id": "yhn4FrKG6Dc7b2NaH", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected && Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dtdwPoK7K3DeH7vvS", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:40:17"} {"_id": "59pA9xFaWN3wdKvJR", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QDgDtZbouQb5uoRSw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:58:52"} {"_id": "hK59jnYbjZm4MQnEE", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | eventually f in Trash implies always f in Trash\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ipADGtxxtB8mWsZTW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:56:46"} {"_id": "v5xWfDqyPwRkHQkde", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\talways some f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6yn7w69YYZE8t9xct", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:08:30"} {"_id": "DW3jnYaP6XS4K5X9J", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\n after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DzmkfBsnQCpc3gBqp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:42:12"} {"_id": "SjxXoxgHtixKZQLFt", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "QzQpgToNW32vPEgkG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:32"} {"_id": "TEwNuywcWmrDsHyPp", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GMnGMweSRacek5ZNr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:33:32"} {"_id": "zr4WGmA8rZY89KpFs", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash after always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FZ28CNLebygEuv5XR", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:02:30"} {"_id": "MFcffTYDjwed3qwLk", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n eventually some f:File | always f in Trash' \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yJZFm5FnH5e5YC8z7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:08"} {"_id": "iS8NEpjcdZQXcJCbH", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "v69iisSrCx76f6Rsv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:47:08"} {"_id": "Rc36H3qfECr3vzBcj", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually some f:File | always f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cf5atQ9pjABboGBE2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:34:20"} {"_id": "WvkXnrFFB7cfx3mS6", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fHDafwvCS4AshrBh9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:18:27"} {"_id": "FHdmar7PXTZL2SzMi", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ij2gCbsu5YnYkzTeR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:19:12"} {"_id": "FZ28CNLebygEuv5XR", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash implies always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wFTJJa6xjrWSLHE9K", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:01:23"} {"_id": "2rE2JTdLbFKNpbFWY", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Protected and f in Trash implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p:Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "m5yKnMMrbaad3DNzM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 01:00:53"} {"_id": "8LB8dF8g85LjQpCGh", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n \teventually all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\t \t\n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2spJpP9XvE7s3rFo8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:30:09"} {"_id": "a7P3c2g6RFr332DHG", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LK85gXmcmJfuJKnmY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 21:09:33"} {"_id": "7X2Xf9szSKcpPz6mQ", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | eventually f in Trash implies always f in Trash' \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ywBcSd7vLhuWTt7ZR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:13:41"} {"_id": "AKQL6cebx6GxPTqFj", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f : File | f in Trash implies eventually File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "z2DQsqE6FustCZEYH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:47:50"} {"_id": "35HreCoEKaP2L3RgX", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File, l->f:link | l in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4KgWoiehCDuZ3aqmy", "msg": "There are 3 possible tokens that can appear here:\n, : =", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:19:21"} {"_id": "9yGM4iC8ZTzJyTHyC", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Bd8ksEeb9iWAvJsGs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:02:08"} {"_id": "9bxdGaxGpH28m5Y39", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EdGXqKe7Nzq3oR88e", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:33:29"} {"_id": "dmZT98uFXf3kDqpJS", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f not in Protected until f in Trash \n}", "derivationOf": "MZxn5EwrHySN2EfSw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:38:40"} {"_id": "AKaF6n2H2BgqyLrR3", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f, g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \talways Protected = Protected \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "msrLeDn3DpAvftT8n", "msg": "== is redundant, because the left and right expressions always have the same value.\nLeft type = {this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:46:40"} {"_id": "Se5XatvSe96mZtW2f", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f in f.link implies f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yu5CM9hFEBZpT5FsB", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:33:41"} {"_id": "AMSWDevXZq2PdvdsR", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\tProtected = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4GicwaeExTLrGvdrp", "msg": "== is redundant, because the left and right expressions always have the same value.\nLeft type = {this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:16:36"} {"_id": "aGxhN8qufG766zoQb", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f, g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jMHNBRALXsRT4ymTq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:38:38"} {"_id": "BeZtp5eLGcpk8P6Wj", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways (some f: File | eventually f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qqKZTX43JcQjFkKaB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:43:01"} {"_id": "hahg2q5w4syzTcwHz", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vM8kqwGccBmwYMfrv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 15:59:20"} {"_id": "93sHQr5gRNXay6sKR", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5r5TfQRMh52wrAXfW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:29:19"} {"_id": "ZbE54qAswcoSwggTR", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vG8zTNQcNw2qR9M6q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:30:17"} {"_id": "zxsn5B4352rTkPKpn", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rdPyAukid2mcjS5nM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:36:15"} {"_id": "Cw449rpXoY8sAuJZB", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (some f : Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "s9x7JSsXu7ygh922j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:05:21"} {"_id": "qc8g8JxxRi35MTvGX", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies always f in Protected\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pbBfBmE6GKvGD9hBS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:42:09"} {"_id": "3w2MHeN3wNFKGY44h", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dRzjErqvbqP34t65a", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:47:08"} {"_id": "9NYjpetptEgZPpMxP", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \n\t\n eventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \n eventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n always eventually link.File in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "cb3e4YMW3v3j6tCRu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:30:40"} {"_id": "xk4jpRHNJ6vsBo4kT", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kREWhbFSiix6PdywD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-6 10:27:52"} {"_id": "PYqaAx5d4ZM3HKnqX", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sf7FTJphEwrJMkhwG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:36:26"} {"_id": "PXHT7HqkpcvZ3WbJd", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tafter some File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KmmocWuPPzhE3NmfY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:03:00"} {"_id": "RMk7JqdQxmtPpKqqo", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all l:link | link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7X86uYLjpY6LWhfx4", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:20:02"} {"_id": "bhAPWDe4EfANRuDK7", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\tsome File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5GZQuves787L9xSF3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:52:26"} {"_id": "5pXZMGSdnQfeEjjkp", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f:File | eventually f' in Trash'\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pCukQTbxNeBsArMpc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:09:39"} {"_id": "hELpYJf67XQERHyhA", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash releases f not in Protected\n}", "derivationOf": "dmZT98uFXf3kDqpJS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:39:11"} {"_id": "WnYPKiWCy3ysjjh9x", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | after f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yHJxrtzkeMBBrAv5Q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:10:35"} {"_id": "u7nhFJjGBEMFsmDus", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "enrorAbSBMegb8WwN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:45:18"} {"_id": "7rGHCihSeLJWyTnYK", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TyfQDzD6r9PmmQ7hJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:48:06"} {"_id": "AWcskxN8dqrFNHrfq", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (Protected' in Protected - (Protected & Trash))\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "j5Lojkz3oeAwL9KCb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:31:25"} {"_id": "BHXQdndTfPtsX44tA", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "44LMNyXGF8Xu6iwT5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:32:23"} {"_id": "ABWtcxyNjFBfkGo63", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ckskj2dzS4tDYKpap", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:45:04"} {"_id": "8pJ8GP59vNfMbRdMD", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | f in Trash implies always f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TrQMdZpPRptgdTQoK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:47"} {"_id": "L2WaadjfyEv7qsAt4", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (some f : File.link | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "45uZoyFEhKfsxB6JF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:09"} {"_id": "pS26zPc6zf3xerAd4", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7wrvB9ENNRyhaQ4dW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:52:50"} {"_id": "9jT74z3Qzt8MyrB5Y", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n\tsome f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LsR7s7tBy2JKZoCGc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:34"} {"_id": "YufcjRbAX7Tvsy9Ym", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | f in Protected triggered f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always (all f : File | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LWurofNZrP3hGwAYw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:44:14"} {"_id": "PzwPo4Beme7r6NDcD", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected && Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BsLMYczRZ7YrZH32h", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:41:54"} {"_id": "LsR7s7tBy2JKZoCGc", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \tsome File\n\tsome f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TXWGhCJrD5sSkCSrL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:10:53"} {"_id": "fgRmDHnsNhgdzNwN4", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File after no File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash implies always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "X4S4te8HdByZhZaT2", "msg": "This expression failed to be typechecked line 41, column 2, filename=/tmp/alloy_heredoc15609469373537219131.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:00:31"} {"_id": "T8RuDzWhr4wPGKo9t", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tTrash && Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZA2rdHjkSeCPhYwBs", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:43:31"} {"_id": "uWYagensDGZWSQCvm", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File'= File - some File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sonwyFZWd4d5Lszvz", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:59:32"} {"_id": "ZGknyF5y8szdBMMCH", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sP2i3NkvtasnrfTRG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:54:16"} {"_id": "kBPmxK5c8qJqb7Qy6", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some File\n \tafter no File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KuZF57qcNf8L32rfe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:00:32"} {"_id": "Xw6NaXsW9gxfR5m9B", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies always f in Protected\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6oGgFgnDTc5ecK6k8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:42:20"} {"_id": "s3umnpsum5ypeBaAh", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 15:57:17"} {"_id": "XMWgYAQTiB4LXkAtn", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PXHT7HqkpcvZ3WbJd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:10:58"} {"_id": "Zc8oDSDxwtvZsMd7Y", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t(File - Protected) in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "CnpS6Fh7HnPyJXNFz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:12:55"} {"_id": "fzZ6FHpHXBABdyPPM", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies always f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dteZokrrJnbgFKCPh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:53"} {"_id": "otpwT5rLp8HoNeE6W", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-7 11:54:58"} {"_id": "26SQJfdbmgjuzd8Mx", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f : File | f in Trash after always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "dexZTENiw9vpDY8tQ", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:57:17"} {"_id": "4JHQyzHAkE89xLMfn", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually after some File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9LHrQWw9h3m8SpcbX", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:16"} {"_id": "aEvZN8GyoPTBQ8c77", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "by84W2FsqkeqnthRS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 14:12:47"} {"_id": "s2fyoRGQiGPS4istZ", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tnot Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PN4C6MxiQgJCo7RnN", "msg": "This expression failed to be typechecked line 21, column 2, filename=/tmp/alloy_heredoc5902877968920861820.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:48:50"} {"_id": "TiL8ZRzm9iNF9dCyH", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Hg3SaDNqMc3uSXY64", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:21:06"} {"_id": "vjdvnTJywobYZiMq6", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in Protected and File' = File -f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TmGTCkQeXwWGKfdbG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:51:19"} {"_id": "DqFehcyNTtAJAePaK", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash & no Protected in File\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KEksisn8hw3Hzrhwi", "msg": "There are 28 possible tokens that can appear here:\n( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:50:56"} {"_id": "fu4u256YZPPJs2Pgz", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways some Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "waLACsfTcvTPpZyED", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:30:58"} {"_id": "bB63vKb8Zv4SzaK3q", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some File\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mrc2QvS6Jkw8gmT4k", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:43:07"} {"_id": "dN3pgeAfx7TMTjwvH", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all l : link | eventually l in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bumw5Eybq9pex6Jzs", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:31:42"} {"_id": "qqKZTX43JcQjFkKaB", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NQNG8L8WtoyJfgL3Z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:38:16"} {"_id": "BYnPyajjZyJAXQjBd", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n some f:File | some f.link\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3T973Cziw6hzfJQcY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:34:08"} {"_id": "9EDoWgh7D6pz2x6uG", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vdYP6eJ6hodqbaedX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:16:31"} {"_id": "pvxf9z6k6FWgnsQCM", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:44:28"} {"_id": "k8WGeiqrWZ98Q7BA2", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "h5jiizfMKsbGMkupu", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:18:58"} {"_id": "uBMEX9FJi6StphQuz", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tsome f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "tZF9MuPABkykB6h4g", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 22:51:53"} {"_id": "KmmocWuPPzhE3NmfY", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tafter some File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "y9mfqBpzmNJ53w6Bn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:02:55"} {"_id": "nBrqiXabtgbvKCt2k", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash since f not in Protected \n}", "derivationOf": "CCCydEHDmC5pMzLxY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:53:05"} {"_id": "ZjouWioQQNKC5iunp", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ruNWAiX5jHHwcbuHf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:28:26"} {"_id": "xr97birXo2tKL3kj3", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always some f : File | f not in Trash implies always f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all t : Trash | t in Trash since t not in Protected\n}\n\n\n\n\n\n", "derivationOf": "mzK2WTXWungb4qdpF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-20 12:07:03"} {"_id": "v2MCjHYcb4YXkHB3d", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : Trash | f not in Protected since f in Trash \n}", "derivationOf": "dZEfhrhFhY2bXLhuv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 19:24:26"} {"_id": "g8hBBdjFZ9wEYG2gM", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f : File | f in Protected implies always f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "eaqm37bgfRgor8ACn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:05:11"} {"_id": "7HGyBYkKePKnuXPmH", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File'\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ABWtcxyNjFBfkGo63", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:45:28"} {"_id": "iRztRKZ6AksjdCqL7", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File in Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gYL8kTYmYwsWxDR7o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:49:14"} {"_id": "bvhsiXPmMguMpLeFy", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies f in Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "f8Y89DN6b56MZJkan", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:40:40"} {"_id": "qcXFmT9ngkaPqW9qX", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BEwT5DwkvwgHDZwjY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:16:06"} {"_id": "Lktu6nMmD4QAjjQrj", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File' = File - (f:some File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fkH2DQKiDoyF9PtRk", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:05:37"} {"_id": "vy6CXaJzwWvpBa8MH", "cmd_i": 14, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | f eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9o8Mfb2BTz3ahwc3c", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:35:46"} {"_id": "Bj4CmgG4Jp8wncz5b", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "n4hfxuyJ9sRLD3epg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:13:36"} {"_id": "RYGegq2n4cQWsNZdy", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | after f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hsskJ3zkhFYLZ72gA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:28"} {"_id": "99e8Hb3LPu9oeLocq", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tall f: File | eventually f in Trash and after always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f: Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "WrHDK3Pjr7YKQkzf2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:47:48"} {"_id": "ESSnn82eDaKJk2bnp", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\tsome f:File | eventually f in Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TiL8ZRzm9iNF9dCyH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:02"} {"_id": "SfSwXRFJ4cg9b4Spc", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6RhM4tpczezaxMtEo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:48:23"} {"_id": "yrCEXoaziKN6ZyacN", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\teventually all f:File | f not in Protected after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ab9pPjEXdK9bkxXxC", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 17:37:53"} {"_id": "cNSxYdStwsXcBq5nH", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : File | f in Protected implies once not (f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "z5FmabrbEXez9yB6Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:06:41"} {"_id": "yaMT4FKthyddoJ68i", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n some File\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XwG8Gfezbf8C2X8Xk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:26"} {"_id": "HMgonMgq6ufEPWHjj", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash since f not in Protected \n}", "derivationOf": "NK9WbDbPs2XRXw8Xo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 19:19:21"} {"_id": "wLqjoJssRqJ3nymxr", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies always f in Protected\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Xw6NaXsW9gxfR5m9B", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:42:22"} {"_id": "D4qYjzCCBxGEBk3Dp", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (some f : File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hoDo4AGdcDnQLvpE6", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:54:26"} {"_id": "n9CSNzjCodCM4T4BT", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2gSsN8mzJZgXs8tAz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:26:57"} {"_id": "XZeL2kW5BN8BceRWd", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "79ruNMCfqJGrwG3Qi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:26:30"} {"_id": "hG9BXW4kmRfFcXu5v", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome Trash and eventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:Trash | always f \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cf2jBRDy2NqwxXdQZ", "msg": "This expression failed to be typechecked line 46, column 18, filename=/tmp/alloy_heredoc16438501240254186796.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:49"} {"_id": "QwqwCCetR7AdLW8Kq", "cmd_i": 14, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Protected and f in Trash implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | f eventually in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7724Bn98vArA8jCmv", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-8 00:59:21"} {"_id": "LGBoxX6esLX42A4b3", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | always f in Trash implies always f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "A6rNAnevwDPwi2bAK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:06"} {"_id": "ENyhGtLJ5o7MG4ABT", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "d33WbQtgm9GKtNPTS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:38:39"} {"_id": "hszrntuGzvRQ4Ltrf", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall f : Protected | f in Trash and f not in Protected until f in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4NuNLyW8CvE7nuRyt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:12:10"} {"_id": "QDgDtZbouQb5uoRSw", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dPN4qDCqJEEFcMujA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:56:57"} {"_id": "2ZZSLrtiJrTwvydQz", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tsJuZhvRxL6BFN2cs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:52:00"} {"_id": "byt68hBWo35XsK8eu", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\n File' = some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ovsZPbyap3LKQWic2", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-11 21:37:24"} {"_id": "4NSBmx4Rafe9AeHfM", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways some f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FPYkGTdx2w7RwKF2L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:15:50"} {"_id": "tZF9MuPABkykB6h4g", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always some f : File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "H9RAPuMzgjvjmN7qP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:40:44"} {"_id": "FES87JgL2is3ogvsk", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all p:Protected | always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aRDTcxKzJmanTWkaa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:25:33"} {"_id": "XumSWXtJF2PDQhTzf", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8Wxdec2pHXM8yxg4i", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:09:43"} {"_id": "osM7SzcYe9zAKyRMD", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CG9cP7gFQdazQCpPi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:47:40"} {"_id": "oMYPKYTeiKWfgRhiS", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash releases f not in Protected\n}", "derivationOf": "oydDnzRegYdYbMZg8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:36:30"} {"_id": "6Wzq8f6LP5g32D3LD", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (File.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "x8bgZjERfMmFhjpZv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:05:58"} {"_id": "SQXXg9u7WbptBHb78", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "f8KGJRNZZGQFhywTY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 17:20:40"} {"_id": "ETBLdEnfXPgC6r9J8", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:47:10"} {"_id": "67yDkCKYtS3PrFiGE", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome Trash implies eventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "M8353MSoFbx8yyYpw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:50:00"} {"_id": "fB4nh5fC4SdqcEetk", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some f:File | f in Trash\n \n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "h6NtSdZETLk7pYErw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:42:20"} {"_id": "6F4dYJTR9YYZXvthB", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (\n \tall f: File | f in Trash triggered f in Trash\n )\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YPWWvNPemRmKXvMfz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 18:46:04"} {"_id": "evrEA5ZFknkoe3Rb7", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "K8TytwgZxkifubzvB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:50:36"} {"_id": "RoDDMoLjpzMGmz4dW", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno Trash && some Trash'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "x28fYYTNwYqy8cgBd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:26:28"} {"_id": "SEixMcgb4qPkAtz8w", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n always all f:Protected | f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ymPTQ5pMFaBXpjkkr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:38:06"} {"_id": "D8mWBbB2FuLBuFPuA", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "iP562AHwTvmm4SfpP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:40:09"} {"_id": "BnBAwsEjZuPNcjj5j", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sEueu5XPxPX974Rai", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:31:30"} {"_id": "C5uCNemjzn73dcQ27", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\t \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "3yW4nj8W9Whf2cwbA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 23:30:18"} {"_id": "nXSh6ym5FHHg33Gzy", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (\n \tall p: Protected | p in Protected until p in Trash\n )\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (\n \tall f: Trash | f in Trash since f not in Protected\n )\n}", "derivationOf": "KmR5GZtkSyuNtoFXr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-3 11:56:01"} {"_id": "rDbQCaMexG3HGfgqy", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FXP8LexHf3jSuHJmz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:47:23"} {"_id": "8bZf3BxfbWknRpkWR", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected' until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "RCHwdLGr47xcnCM2z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:18:08"} {"_id": "kQ4hHX9Cqiugvc256", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\talways all f:File | eventually f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AepzSGuZf8fhp8We8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:33:04"} {"_id": "XfprEbzvE8DktQafo", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually all f:File | f in Trash implies f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ecwAxPPYKBH7hwAYC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:42:58"} {"_id": "mwXH4PXYu8CySYkEj", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | eventually f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "j4wX3hRj78SW8maoZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:41:28"} {"_id": "KvuCtBNYAMscB3zuL", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tall f : File | (f in Trash and f in Protected) implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "4xEpgLLf8Gm2udezC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 22:54:15"} {"_id": "NbfH2xJNJpF5aS3aH", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "J7Gy7vQfRkk5Drim3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-7 11:57:10"} {"_id": "FPYkGTdx2w7RwKF2L", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always some f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bqAjPhrnrPWojrbLn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:13:10"} {"_id": "tm5dNNXTgLnegutCq", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f : Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f : File | f in Protected implies f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cKsBePAbfHbmn7qZh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:43:32"} {"_id": "CF2m9X9tJ7NARGMjY", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\t\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "x7mivsc8DzBFGmXAY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:15:33"} {"_id": "e3jqfxeC4uhjuDQbn", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually always some f:File | f' in Trash'\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "L2hcPR7Mg8rF6bkxn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:08:18"} {"_id": "5cpZPWQsRTTx7qfbv", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways (some f: File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9C7u46fpgR7AvwbsX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:46:38"} {"_id": "7yPZkpPHp4JQ59gzE", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PJfdi38EoXoYvRGCL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:47:52"} {"_id": "nZS8shefa7NrzyYQj", "cmd_i": 15, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "82zbqgBweMCE3Pfsa", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:59:20"} {"_id": "hvwFTBHjbExJcdPee", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qyRYN8AEYsComRu5v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:56:02"} {"_id": "hvrp9XFhMKqQrTtJc", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | (f in Protected implies always f in Protected) and (f not in Protected implies always f not in Protected)\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Z43Es4gtTASkqk6DZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:46:13"} {"_id": "cjWJdCCF5FSLMT6rX", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rBzzeza7rEDD52hjx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:40:38"} {"_id": "fkH2DQKiDoyF9PtRk", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File' = File - (f:some File)\n \t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4FvTJPeBqtgssKtir", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:05:29"} {"_id": "DttMkdC55a3zn3JbM", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fchorkFRcyukM46s5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:56:25"} {"_id": "QYaxgZQ5ZhGNoLnJf", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File' not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5iCnGWSM3xFKenvyH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:18:16"} {"_id": "fK4sLyJgPZktWH4e8", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "k4nnKFjRqisTiEFRP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:58:17"} {"_id": "ewRiam5ydn7ToBsrN", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies Protected' = Protected + f\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ocFmyKuMYwdCFrNyw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:42:24"} {"_id": "3kvgEeTi8fjQ2ndc3", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome File eventually no File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iLkXNS2inw7EFvbMd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:02:02"} {"_id": "tP4wF8dBkyEAcgo88", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways Protected not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BHXQdndTfPtsX44tA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:33:06"} {"_id": "fJKzvAvyrvAYjjBpH", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (\n \tall p: Protected | p in Protected until p in Trash\n )\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ybAk2MjKGwJzJ9ZYL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-3 11:50:13"} {"_id": "LHvFkYkAQKWe6Ppkt", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (always File.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6Wzq8f6LP5g32D3LD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:30"} {"_id": "t28JH3vNGRjpihgcQ", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f: File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "n8rWovppqXekuSBi2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:03:11"} {"_id": "gtNut7EQKjmts5ShB", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tFile in Trash implies always File in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Py9A5FZbSqyqkbSF6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:56:00"} {"_id": "X2FpNyDWa5erCecof", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ToJWgv47cRMKQk78H", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:34:57"} {"_id": "wr4dbYkPsi5qutjfH", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZbE54qAswcoSwggTR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:30:24"} {"_id": "8ZNJ6xH6YBJNRkauc", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HruoCi8sNAkdzZHoD", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:09:07"} {"_id": "p6koXYCKQ52RzJcga", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "xZmzEjL4cHtLAQY2x", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:37"} {"_id": "rzDsJSnkD4eK3T492", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f,g:File | eventually f->g in link implies f in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bz8kyyNSSZLfdDsdN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:34:54"} {"_id": "w8o27DpzrEsPQ2oS6", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after \n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4dfoKz92bcck6Srua", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:53:51"} {"_id": "Zd6gAjWtyGHZWT5zD", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BFbBhR5bNHPQMhKJm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:51:42"} {"_id": "nxQisBDeg4FAeduBc", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rxuFXvPfkksqs7dk9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:31:30"} {"_id": "adM8qe42XjJ9tgpJP", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | (f in (Trash & Protected)) implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "QyyqNz9mvoxHq23Xi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:02:36"} {"_id": "X2hLCQ6ArWwq6B2rZ", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually some (link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sef9QCR7RXhDBLaLR", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:21:53"} {"_id": "Gk4togHnqdEA4Qf2y", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all l:link | l in Trash'\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "heq9vFRwykmRASCwQ", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:18:01"} {"_id": "TtxjZqhRvrdGLqm9k", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\t \talways all f:File | f in Trash implies f in Protected' and not f in Trash'\n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7tqnnGZk9EJLLFYjk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:33:31"} {"_id": "zBEdSbRkvxNemTiE2", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6Ajppa99Ej6juzG6j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:55:34"} {"_id": "63F79avEzxQYA7veY", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways (all f : Protected | f not in Protected implies f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "u7xyut7dQqXnJB8xR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:41:14"} {"_id": "7frH28yQHsJtwe4Jx", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f,g: File| f->g in link implies eventually always f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KDmYKRCnoxSt5QptB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:29:17"} {"_id": "4zAZiZrLFipAf5HFb", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ( ((File - Protected) in Protected'))\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZWo3CMoJv6e6GEyK3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:23:06"} {"_id": "czrr9Jsfc5jPcuL9L", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways some f : File | eventually Trash = Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3Jp9goR4zPyvgfqb5", "msg": "This variable is unused.", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:16:40"} {"_id": "MgorTrpxPWPWfs9Ka", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:File |eventually f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | once f in Trash implies always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LzRTiEMR6dRwaXjcy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:08:25"} {"_id": "78YPheH3L4wzqcdur", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\talways some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5SkQevrYAtqQ59t89", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:16:59"} {"_id": "kodX2qXkRqTNuCNXC", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "Np76tkQ8XRyN38wmP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 23:25:02"} {"_id": "7RwC7WiqC9BWgPkET", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "uBMTkJmKuW3jJqHu7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:54:21"} {"_id": "vdXvCbMtfdmETZSyN", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vGxiDtwcfwQtkgmy5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:31:10"} {"_id": "uCoaa22jujYxdr2ra", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f not in Protected since f in Trash\n}", "derivationOf": "CNR2eoKgyfzd7RE9D", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:40:24"} {"_id": "dP5kzffh7iw4riDr8", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8Xsn949HmRd2ayg5x", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:49:34"} {"_id": "FBF4HGwyuS6aCZu9C", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | f in Protected implies f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "deNNXi49a6FhAtmc4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:37:31"} {"_id": "2uqqp8sKxx2qnapLT", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | f in Trash implies eventually f always in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "33P2RgPJ8uDwiErbh", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:13:20"} {"_id": "Br5a6azREg7yJH9Mo", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File' = File - Trash\n \t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GQMRTeYd6tSpWukdz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:03:01"} {"_id": "89cbFivxbAddzzs8A", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | (f not in Protected and f not in Trash) implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pxFWPyYscfCc9Hgwe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:49:04"} {"_id": "nqaCbSpa7safdcCfp", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways some f : File | eventually some f in Trash implies f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "S2rKnFGwzfmT95ueW", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:15:46"} {"_id": "rtiJinbXHGAgmE9yi", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tsome f:File | f in Trash implies always f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Kd5iRenzATR6S3DL4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:53"} {"_id": "AyfTAAgzQjuNiZyPj", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f not in Trash and eventually f in Trash implies f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "betskoanKwz9ocwRN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:37:57"} {"_id": "beN9DFRszgTa2iK8W", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some f:File | f in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\talways (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\tsome Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PoAqndbJuN9Quqt3z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:31:52"} {"_id": "oBBsWZPAMP35TY5k6", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\nalways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LLvqoWYsAacXzPmuM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 17:20:01"} {"_id": "adf4qHKkg6BNExLtn", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash since f not in Protected\n}", "derivationOf": "EXBNtqxMn6BzrnDBH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 18:34:59"} {"_id": "6oGgFgnDTc5ecK6k8", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies always f in Protected\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qc8g8JxxRi35MTvGX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:42:15"} {"_id": "WN3dWTaEB82RW6H43", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 09:54:46"} {"_id": "G8HajbvgtAHKtHRdq", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (some f : File| f in link.File implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GAFXr9NPRpEvWCWot", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:25:52"} {"_id": "nsnqTmPucCkkbbuuh", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BnBAwsEjZuPNcjj5j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:33:54"} {"_id": "EENr2Pf4W9AbfYLTp", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f,f1 in File | f->f1 in link\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5CvPYJ8LeasqTKAFy", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:31:17"} {"_id": "xTpfycwJShqKRmnoa", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually no File \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash after f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LLMdEfouxDipxJL7x", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:05:37"} {"_id": "Nx3b7usZFBRmDSQG4", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always (some File)\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : Trash | f not in File')\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Wg4nEn5YfvZzzh5G4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 08:47:52"} {"_id": "vhoeMTA4Mp7QBmMTK", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome Trash after always Trash\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zNpnS7ngDjRJvKEux", "msg": "This expression failed to be typechecked line 46, column 19, filename=/tmp/alloy_heredoc17067046577145839719.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:19"} {"_id": "oQX2g4h6DRnuSshyf", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n some File\n some f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yaMT4FKthyddoJ68i", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:51"} {"_id": "XRZAALrQeEpJtCjyQ", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "hgbpQbiHvyKrJQvCY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:55"} {"_id": "z2aezyLHo83DqobnM", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6zcwfWHuoFL3qkT7F", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:59:53"} {"_id": "sTYxwi7NzgxsSAKxy", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually some f: Trash | always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f: Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "5LqjxcHWuYJXuCDa6", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 508.4444580078125, "y": 79.6}, "File1": {"x": 381.3333435058594, "y": 318.4}, "File2": {"x": 381.3333435058594, "y": 238.79999999999998}, "RejectedBySolution": {"x": 254.22222900390625, "y": 79.6}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-10-31 11:49:43"} {"_id": "3yW4nj8W9Whf2cwbA", "cmd_i": 16, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\t since all f:File | f in Trash implies f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "Qn2ePQuRMDA7ssBbh", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-11 23:30:09"} {"_id": "D4SCRxE4S7eqp2ghE", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f : File | eventually f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NDqxPR6NDQrRDhFtf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:53:39"} {"_id": "Y9ZsiHW2NM8o27CL9", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually some f : File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "rwAKBXJD5gCoA9cxm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:40:33"} {"_id": "rAiA5uctu3iXcLN4Y", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "w8o27DpzrEsPQ2oS6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:54:02"} {"_id": "C9pbWsWdabtQT47ND", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "C2EQQSvgJwHBRqZCZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:50:54"} {"_id": "Xg2SPmPnxmp6SvK7m", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f : File | f in Trash implies always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "26SQJfdbmgjuzd8Mx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:57:46"} {"_id": "XbJAYv8CRQYuFPSj8", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tTrash' in Trash\n\t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qrseory3n7Ay39gj5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:19:32"} {"_id": "q9GrZobDpHttamnAv", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "u7nhFJjGBEMFsmDus", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:45:41"} {"_id": "2dRLgi6zSCpvJhzA4", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "hmNNZBzmEnpmwNxbn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 20:20:16"} {"_id": "iHb9tZK6TCFwTd4ts", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\talways all f:File | eventually f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BXw4XeCKcgWhyd9vL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:34:47"} {"_id": "9C7u46fpgR7AvwbsX", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways (some f: File | eventually f in Trash and always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hyPJWiY8ZDMEqA6ri", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:46:24"} {"_id": "cXhKkDSrWQCw96MZD", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \n always Protected & Protected' not in Trash + Trash'\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sDqNoXw42BwS8eRBk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:16:40"} {"_id": "AL42hF2jLKb2C4dDG", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "t6u9syAHXoZzZTyPN", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:44:24"} {"_id": "wkh8SFhaHMSR4458Z", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash) )\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "maLgDqr2ftJsLqSnZ", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:38:13"} {"_id": "BRBsLqqmJ7Ek3fAH6", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always Protected & Trash not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "H4YSLohFCYukRuZxB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:12"} {"_id": "P75NMe6wPSYh65xW2", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "p6koXYCKQ52RzJcga", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:39"} {"_id": "3rqLrkDZx3NRiBRaY", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n some f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kMfjxpGc65nNY4krH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:17:33"} {"_id": "MbB9QGe24xafeh487", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "THfAr5kNRyyWsvxej", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:12:44"} {"_id": "dKPNM8NYohyvYPjC2", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n some f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9Qz5xfsLeTscZ9Atf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:05"} {"_id": "ttDJ474CJ9haRH5Ny", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "f6W7a2C9GkQm2MdMP", "msg": "This expression failed to be typechecked line 63, column 2, filename=/tmp/alloy_heredoc13268189110455313115.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 12:27:31"} {"_id": "i4rsQistCDjqS83EK", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t some f:File | f not in Trash implies always f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Z2ec4Mxgj5oF7FZsC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:09:48"} {"_id": "jyqjLhaF6d75KTGEo", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\tsome File & Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "QnuPGXGFSYooSdE6K", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:13:13"} {"_id": "wrwyJqP9hdm6iR5AK", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tFile in Trash implies once no Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vhoeMTA4Mp7QBmMTK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:59:17"} {"_id": "3dSJymYu92vNAgSSQ", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fxNGMHNx2cXqkfPS4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-29 17:31:22"} {"_id": "KbBLZrZpvr5cNERxk", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8ZNJ6xH6YBJNRkauc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:09:52"} {"_id": "iF5doTNKWPxTxob6S", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bhAPWDe4EfANRuDK7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:52:33"} {"_id": "szabirgcd6m4tQjzi", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f : File | f in Protected implies always f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "g8hBBdjFZ9wEYG2gM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:05:15"} {"_id": "C8afWwyRarPiCpLvJ", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tall f:File | f in (Trash & Protected) implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qXy4fHLtG2rZGBwF2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:41:02"} {"_id": "gQ9K7kgvw4dKTtLMS", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vjdvnTJywobYZiMq6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:53:01"} {"_id": "p8L66jYhrCRj6KHHj", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "evrEA5ZFknkoe3Rb7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:50:47"} {"_id": "aBQXdmcJarv4sxnjv", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tFile\n \tFile'= some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yeox3rzZEni94rF7N", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:57"} {"_id": "Jj9jcRhGRkboWt522", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always f:File | f not in Trash after f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "t3kdtA8kbfhPtyN7K", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:04:05"} {"_id": "qRp9LYxssp7zfjT8j", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:File | f in Trash and always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "om8hLues5RwQwfTHE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:09:51"} {"_id": "kkiqvJZNmKjaRhxHi", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9bxdGaxGpH28m5Y39", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:33:46"} {"_id": "zP4YxfTijqHd9YycN", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies always f in Protected\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qJPBWpRT8PtatjuTm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:41:59"} {"_id": "y4ushMnhdF8crc88W", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\teventually all f:File | f not in Protected after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tEuRR5wpsARHc9zqv", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 17:38:42"} {"_id": "b2i9HZdkf3HedkmNx", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | eventually f in Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "g4ezrHCZ8qoGhBPyM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:24:59"} {"_id": "Qxsje7W4orKbcDZ8q", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all Protected not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HKhBqigh6jRzFwdQB", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:36:36"} {"_id": "DPb2XashocbtHu8gP", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually all f:File | f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "y8WHwmERnxEdHt8Cd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:07:41"} {"_id": "vGksb5hNJ98ffnn3A", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fCTNLH3Fj6383ApW6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:15:17"} {"_id": "heLSzqFneA5Loezp3", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies always f in Trash\n \t\n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cHKu95qPkdjrCYwvA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:19:00"} {"_id": "YSGPDqm7F5CTasNKu", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "BBxQAPTPCf67YrLBK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:26"} {"_id": "ERARJDWZ6mC9cGRfK", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\teventually some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2RLpjiZPJ4rFyKjjq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:52:24"} {"_id": "NQNG8L8WtoyJfgL3Z", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (all f: File - Protected | f in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "B9tiHx7sZbEqP9RAt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:36:57"} {"_id": "CgPZdYTZur6BRix6s", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tall f:File | f after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5t3RXEarYowo3iKDH", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:29:43"} {"_id": "zNpnS7ngDjRJvKEux", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome File in Trash always Trash\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8D4hvDb6bgBsmZ4uD", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:04"} {"_id": "rdPyAukid2mcjS5nM", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Mvs6wMcLjoAWBKNpG", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 19:35:10"} {"_id": "qNwDws7syp3Cajivy", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways eventually all f : File | f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "RR9Y7tChBAnyQkQdg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:04:09"} {"_id": "G7ssdcoaMRTHYy5Ex", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uCuNKLPLF9cq8ZC5z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:43:14"} {"_id": "rbAP8q5R5mKGitAaL", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9yGM4iC8ZTzJyTHyC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:02:30"} {"_id": "e4Hv5hSeGnfL7sfHt", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "p24TQBq5u9PFiaWG8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 22:52:51"} {"_id": "pCukQTbxNeBsArMpc", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some f:File | f' in Trash'\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "e3jqfxeC4uhjuDQbn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:08:29"} {"_id": "4TMQx2sCzydmeYTTj", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sojrm7zzWqoXww9sx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:53:56"} {"_id": "DG9scczEGS8indPoG", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | after eventually f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DbZwyFhGFDropjonb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:36"} {"_id": "cP88SeDfEoFCYdzRQ", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | File' = File - f)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rhC4mxw3FZWcibS5E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:56:03"} {"_id": "AfrTrQ7BGBEWMxRFH", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KuarZoJyGhqLTkWS7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 15:59:02"} {"_id": "7Y6ChH9wf3Emo5fkv", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tsome File after no File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mwsXXQ5rBsQwFKXAP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:49:06"} {"_id": "KvM3RzvtLx8vuYms2", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (some x,y : File | x->y in link implies (x in Trash and y in Trash))\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7xQBdrNTWtqoKZP5t", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:10:06"} {"_id": "XBNRx4SMF3tZxSm4P", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:45:27"} {"_id": "wEmuaBXRZii5S7sXT", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways f : File | eventually f in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "itD2MGzaYPk2FzpBx", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:18:27"} {"_id": "GtvxhPD9Qrcr2jecT", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n \tall f:Trash | once not in Protected\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZF7tb3AJjFSSYaNpY", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:47:27"} {"_id": "MisHHmkSeMerpmLJi", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall f:Protected | always f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "u8QjKvxnnDZqSNJ3E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:45:11"} {"_id": "GwKPeEpzZvPktBExE", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways( some f: File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8GJBBPAhqEBtDLCzv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:54"} {"_id": "THfAr5kNRyyWsvxej", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always (all f : Protected | f not in Trash)\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2KyCuqZtsYPRovWLc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:12:19"} {"_id": "yNXxzRaXkgsRhCtHm", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (all f : File | some f.link implies f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MmyjENfZf77Febmq6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:53"} {"_id": "h5jiizfMKsbGMkupu", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually File.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "hZZemgEWvg8pmZnqA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:18:49"} {"_id": "Hdxsz5pgKHDubyqa6", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (all f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hGWrydbrBGkFrLx6a", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:49:08"} {"_id": "tR3S84y43rSL9524d", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "c323cm2nDZXNKvmYc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:27:10"} {"_id": "hZaFyNy3fenetzPpW", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome File\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rbAP8q5R5mKGitAaL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:02:52"} {"_id": "dteZokrrJnbgFKCPh", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hL3tr7ztGTYJPBBzE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:34"} {"_id": "F8TNYSSWhYDYbb5Bz", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | f in Trash triggered f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 14:09:43"} {"_id": "M8353MSoFbx8yyYpw", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Rx7WSF7TCHSy7SJbG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:49:16"} {"_id": "odMphT6jQoTAttCma", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gT7RaFsbbERyhSwpT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:04:59"} {"_id": "jzaosAJZ8cbXtKN3B", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tno Trash & Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xtG3dcW3cQEmFWvxL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:38:20"} {"_id": "KAtshFPvrAYXR9nEp", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually( some File' in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kbP6GGAyX7QAGf4hw", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:06:45"} {"_id": "yFZWchtizHqtESTFP", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f in Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Mj3MamYucLBRjioaq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:08:47"} {"_id": "dhcjhCZqiEmKZxRxJ", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f : File | some eventually f in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wEmuaBXRZii5S7sXT", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:18:39"} {"_id": "inb5Reci842tNPE9L", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always (all f : File | f not in Protected triggered f in Trash)\n}", "derivationOf": "rEz3ypZNstqjNt8rY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 14:41:08"} {"_id": "g4ezrHCZ8qoGhBPyM", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "v654giz9YehdoCDCA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:24:51"} {"_id": "J65cXNSZbfwi2gnw7", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "qg4SaGmNAdRghkBdA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:24:13"} {"_id": "Lo2cRva5QZGnDuiY8", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n all f : File | f in Trash implies after always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "p8L66jYhrCRj6KHHj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:52:33"} {"_id": "Nz2JQEpqvpYWPnnDY", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cP88SeDfEoFCYdzRQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:57:10"} {"_id": "FyiTpjoMfMLwYh9FD", "cmd_i": 12, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tFile in Trash implies once not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wrwyJqP9hdm6iR5AK", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:59:51"} {"_id": "ydxGxDhuh4yPqnWtT", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | f in Protected triggered f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hpvrkXMbXX7yykPz4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:40:59"} {"_id": "QGLH5FNXDeQz4TeHZ", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | (f in Trash and f in Protected) implies (f in Trash' and f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2rqPjqgkqgjSZ3hcf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:48:42"} {"_id": "RCHwdLGr47xcnCM2z", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected' until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "yMnttWnq6kQA2sRm7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:18:05"} {"_id": "jTHThQGNK2KpXyviZ", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n}\tno Trash+Protected\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \t no File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ybMr8nk7yp3wm4egq", "msg": "There are 5 possible tokens that can appear here:\nenum fun let open pred", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:57:51"} {"_id": "fXysZJerdAE8szmqP", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\teventually all f:File | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TQwoGzPrzJSBJKvYY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:35:38"} {"_id": "fxNGMHNx2cXqkfPS4", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (some Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fu4u256YZPPJs2Pgz", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:31:06"} {"_id": "YaAvTgG6D5aQs743n", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash since f not in Protected\n}", "derivationOf": "hELpYJf67XQERHyhA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:39:18"} {"_id": "kMfjxpGc65nNY4krH", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n some File\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dKPNM8NYohyvYPjC2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:16:52"} {"_id": "ab9pPjEXdK9bkxXxC", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\teventually all f:File | f not in Protected after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4pzNyA8WGbkL8Pque", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 17:37:41"} {"_id": "5SkQevrYAtqQ59t89", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dWnWEGg6wTvnvkXFk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:16:10"} {"_id": "qJPBWpRT8PtatjuTm", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies always f in Protected\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BzcvAcvfrGPHicSjB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:41:41"} {"_id": "qGHKAkikk68BYnGMw", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\n \talways all f:File | f in Trash implies eventually f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mMBQBHkLB9cbNncvz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:18:30"} {"_id": "XwG8Gfezbf8C2X8Xk", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n some f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Wa4Cbny2EED4JnnnK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:16"} {"_id": "oPKmwp52rJxKK4nQ6", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) = Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "N4fQiQxjbsgaT6v66", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:56:36"} {"_id": "iie5jfpxcNG2hzzWJ", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in f.link implies f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XnWCY5pguntPZLdy3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:28:16"} {"_id": "5iit2ZNkjmLF5W6kF", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome File && no Trash\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QsmPNwGNrNQvjXRqs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:04:29"} {"_id": "QJmapWca6mCwujLSF", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t(File - Protected) - Trash in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "4R4aszq8himoMNysx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:07:10"} {"_id": "b25MH4b8JnSYnFnkQ", "cmd_i": 12, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:File | f in Trash implies once not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RovM4Hou495xcdGSB", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:38:36"} {"_id": "FYsTs7voKAviGTQkj", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \n\t\n eventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "JmW2cnrScjBDan7Mb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:26:58"} {"_id": "Q5e4QPDJLYEF63Eo2", "cmd_i": 17, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : File | f in Trash implies after File = File - f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (f in Trash triggered F in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rf5wwnYMbY3QBwFh7", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:39:37"} {"_id": "rKyh7nKkxyjbAt5Jq", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash since f not in Protected\n}", "derivationOf": "SQXXg9u7WbptBHb78", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 18:34:39"} {"_id": "Sw8FjtauH6sHNjyE3", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (some f: File | f in link.File implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XddQZbFdfBWa9zw5c", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:28:48"} {"_id": "8Wnfi7Te33BxXBbPr", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | always f in Protected' \n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "58S5bKtyvxXJQttT5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:50:16"} {"_id": "DM8YdsDjbjFHqgXFf", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WcNobCAEMheBJ4cQb", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File}\nRight type = {this/File->this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:19:25"} {"_id": "K8TytwgZxkifubzvB", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pSpDAAP4uR4F59Hz5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:50:20"} {"_id": "h7WQTTAeWDApaB4FH", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | after f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6bSaAaPzE5zY9JKwv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:25:06"} {"_id": "MsJdJknAuudPnL2Mw", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n\talways all f:File | f in Trash implies f not in File' \n \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \n \talways all f:File | f in Trash implies f not in Protected'\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dh5EopQqbBQ7tevYE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:24:15"} {"_id": "dfK55Kdye3jMnDez6", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:45:07"} {"_id": "W9QqLQWM8WBhPk9Pk", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "HfMepiShpckb2jfCQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 19:27:15"} {"_id": "J7Gy7vQfRkk5Drim3", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\talways all f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "otpwT5rLp8HoNeE6W", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-7 11:55:50"} {"_id": "7wPGJcy4faJmqDuGh", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f : Trash | f in Trash since f in Protected\n}", "derivationOf": "f86XjMkMtvPG998JE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:34"} {"_id": "dZEfhrhFhY2bXLhuv", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways some f : File | f not in Protected since f in Trash \n}", "derivationOf": "ngGyyCGMPMf7EGsJ5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 19:23:51"} {"_id": "Rad8rJh4N3ZFN8Eeu", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash & no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "s3umnpsum5ypeBaAh", "msg": "There are 28 possible tokens that can appear here:\n( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 15:57:31"} {"_id": "joBZfzb9c955N5E8h", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cXhKkDSrWQCw96MZD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:18:44"} {"_id": "xb2d7uWRMmj9XarDK", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tall f:File | eventually f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:File | f in Trash and always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "av7mfzGDt7X8iyZna", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:00:59"} {"_id": "PcQkbomronrFnEk6q", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Jj9jcRhGRkboWt522", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:04:11"} {"_id": "56tx48SY2BMhhmgNT", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno Files\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qDPQdHpXNgW5MSfvv", "msg": "The name \"Files\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:54:18"} {"_id": "8m5hQx5wgMmByjRFJ", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually some f:File | f.link not in File'\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "a7hrKEBxZycbLcgtx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:29:21"} {"_id": "ZJW7w7mkFfHzSnhxQ", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected after f in Trash and f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n\talways all f:File | f in Trash implies f not in File' \n \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \n \talways all f:File | f in Trash implies f not in Protected'\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fEFWjHMDXyJXJaGzS", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:53:53"} {"_id": "knHsdHq9jGqKNAxNn", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "33HHcfRCbvH64A2es", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:53:13"} {"_id": "dh5EopQqbBQ7tevYE", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n\talways all f:File | f in Trash implies f not in File' \n \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZP9AHoR2ZtASjF5dS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 20:22:19"} {"_id": "5HqB5RXyNKpKTmNpm", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually some a,b:File | a->b in link after a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ja8Nj6x4sAmkPi6xw", "msg": "The name \"a\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:24:36"} {"_id": "Bd8ksEeb9iWAvJsGs", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Qtqtizo6pWpHDmm8g", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:01:57"} {"_id": "BpvdtQDx8q8oHuRyi", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "A4H8pdg3JYj7v5TkM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:18:39"} {"_id": "5jfGoyNCdqk5P4QAc", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (\n \tsome f: File | f not in File'\n )\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f: File | f in Trash triggered f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eAqbwgBBn8Svcxb2Q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-2 18:44:19"} {"_id": "3Xbp3wqJSvftvFFNy", "cmd_i": 14, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\tall f:File | f not in Trash eventually f in Trash'\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5rWMEicjejryTfnDE", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-11 22:40:44"} {"_id": "Pgpkh9pQJzML9n5Et", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually ( some f:File | f' in Trash')\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wqf5AT5QSAmSiSEDT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:18:37"} {"_id": "AMrvGc8ZgeyG48su2", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NWA228XiePWfPLiTM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:27:01"} {"_id": "HLGiKf3J2gbSRKi8m", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "YSGPDqm7F5CTasNKu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:27"} {"_id": "kREWhbFSiix6PdywD", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tProtected in Trash implies Protected' not in Trash\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Tw8uaZowbSCotoCdD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 10:27:04"} {"_id": "iypFgKvrKuaZZcf4o", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (File.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "H6Pfw4orpA7KBsHSF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:05:47"} {"_id": "o47ycp7SKFdiSLZnH", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (\n \tall f: link.File | eventually f in Trash \n )\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vFqqfxh6e3huwaa8E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 18:47:58"} {"_id": "GnpvadPLkrw59g88f", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eTZJN9AJuson2o4kc", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:39:18"} {"_id": "7bETue2s7H8iAkQGo", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\tsome File in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Z27W4h3ABGf6G3y2f", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:11:32"} {"_id": "t5FQYc9cwFPghWosH", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tafter File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aYp3QPHG5zC2PRyon", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:18:26"} {"_id": "D6A3Qqt4ud9WQikuW", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n historically Protected = Protected'\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gNRtijYdPuTNSHrHW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:35:06"} {"_id": "W8kJkudZ9Cy37ovtX", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f : Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kzZK3sMjvDRqJwhYW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:51:45"} {"_id": "NFrmTiQmdadXxxStm", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\tall f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "Zc8oDSDxwtvZsMd7Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:13:49"} {"_id": "tCbsKQ49P6twsLzwm", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "2dRLgi6zSCpvJhzA4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 20:20:29"} {"_id": "8qY5EkDJdCJ87L2pi", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all f:Trash| f in Trash') \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8fvoMsEZupzDgRwqR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:12:59"} {"_id": "TTyCF87DAJ9bXkaEH", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EjHAxzSA9cCqQ6e2Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:47:17"} {"_id": "dexZTENiw9vpDY8tQ", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "tPAe8mqGBLuHgAqDd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 16:54:54"} {"_id": "iLxZtTCJdPH7tFEGS", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File && next some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BZvHriHS89jDCaCoL", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int->Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:49:42"} {"_id": "mXhuZhL8LZhQXmJoP", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BN3hnAZ7TtKW4Zw4x", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:49:29"} {"_id": "CPvbP4sLgBBrznYYr", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EyXPLRr5k34BYxAwf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-6 10:30:58"} {"_id": "y6EofXWqzjpC7K5bn", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f.link in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BYnPyajjZyJAXQjBd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:35:03"} {"_id": "ocFmyKuMYwdCFrNyw", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways f:File | f not in Protected implies Protected' = Protected + f\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tLQ54wjBvLigTpjXG", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:41:00"} {"_id": "wTM4KJcdAh9orqSQM", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File.Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9A3738FRgp9mKmFuG", "msg": "This cannot be a legal relational join where\nleft hand side is this/File (type = {this/File})\nright hand side is this/Trash (type = {this/File})", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-11 21:39:25"} {"_id": "LhNX6BvyNvPEaNxD4", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t (all f : File | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JLbW2qfucNnYGmaDQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:38:07"} {"_id": "Q3S9iAmPRBTZMjDPP", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways Protected not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5HqB5RXyNKpKTmNpm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:28:57"} {"_id": "z89Er4yF7TSGtrdPZ", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\t\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DcXTqWsL8WzbRTEms", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 364.16668701171875, "y": 199.1666717529297}, "File1": {"x": 485.5555826822917, "y": 99.58333587646484}, "File2": {"x": 364.16668701171875, "y": 298.75000762939453}, "RejectedBySolution": {"x": 242.77779134114581, "y": 99.58333587646484}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-11-4 19:15:33"} {"_id": "YXBnQi99CZHGCwMzg", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n \n always historically Protected = Protected'\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HSbXfeqgJzYLZQHxz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:36:04"} {"_id": "jPzQLM8Ygca985bd7", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File in Trash\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cdhMzf7NpkZgGPq6h", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-29 17:28:23"} {"_id": "kBGE8rWggZjPLQBgL", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "m8QapyZSBd7sH8vkx", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:13:15"} {"_id": "t6u9syAHXoZzZTyPN", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tall f:File | f not in Protected after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tQGrTvBDJoM2wW35j", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:43:38"} {"_id": "EeFFmHnHMkEDj9RTo", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tall f:File | f in (Trash & Protected) implies f not in (Trash & Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LiDFi5sMmbPuH7P6j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:41:55"} {"_id": "cb3e4YMW3v3j6tCRu", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \n\t\n eventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \n eventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "FYsTs7voKAviGTQkj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:27:55"} {"_id": "Zs2gAvyqWkhjGAHSs", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rF7fiitgM2WHX7ymX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:24:28"} {"_id": "9vDQHbRTfAPrXNRE2", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DzsNPC4kMXPp9xwZu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:41:43"} {"_id": "Eb5QrpicB2CJyEZsw", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : File | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LhNX6BvyNvPEaNxD4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:38:17"} {"_id": "xMoKq8pjF3BrBgFmQ", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zBEdSbRkvxNemTiE2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:56:42"} {"_id": "L4wqWr8nEgYEaifyL", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | eventually File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yQFQAnD8SRa5ERwYP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:04:03"} {"_id": "28uNcS585sPtt59ZM", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (Protected not in Trash')\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Fjg4zJP658sMQodhp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:41:29"} {"_id": "ij2gCbsu5YnYkzTeR", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | always f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vwiJfNd9yEb68vMiw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:17:26"} {"_id": "omEEb8T8fBL9ubEYC", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually some f: File | f in Trash and after always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f: Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "j7Ywt3tqwHMTowXWt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:48:17"} {"_id": "HtNQnf85WYG6KM2DJ", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | always f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nxQisBDeg4FAeduBc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:31:48"} {"_id": "zc6ywHSYYtc3zLXJe", "cmd_i": 19, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n\tTrash since Trash not in Protected\n}\n\n\n\n\n\n", "derivationOf": "upbPZYaL4FFpray8E", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 23:22:56"} {"_id": "7hFQtsoEPB6LbdBzM", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\teventually all f : Protected | f in Trash until f in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bZwLTBmrDEC4Qniij", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:11:48"} {"_id": "W9XgvTM6BzKHCBgec", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | f in f.link eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nGEja83thZ3dYPz5n", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:32:10"} {"_id": "LmmL5nqA2aCLad7ye", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Z8wyAzBirEoChfRtu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-9 04:54:16"} {"_id": "MZPj3333pNqCC7uPn", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QWzXWc3pwzaTiHFkq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:20:47"} {"_id": "Q2JsutpsCSysmx2R5", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f:File and eventually Trash' = Trash + f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FEq92cytaDrb9zNYK", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:03:57"} {"_id": "zA7LhJijbvYGg4aYW", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n all f:File | f in Trash\n always f in Trash' \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KkhHRkGydBwjpqn22", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:14:56"} {"_id": "hWcDojJv7vWBQQ5mM", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "JPDY5qe3CWNtEKfbQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:09:18"} {"_id": "uqeT6aLoyAEimy6QH", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f : Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f : File | f in Protected implies always f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tm5dNNXTgLnegutCq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:43:48"} {"_id": "JwMnPXzZLEpfEzXb6", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | always f not in Protected since once f in Trash\n}", "derivationOf": "mhYkfqSGPzN6JGjuC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:44:10"} {"_id": "AuRh3t8nqWw6kF4rx", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always some f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Rc36H3qfECr3vzBcj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:36:48"} {"_id": "yN6E7YKLHG86jj47R", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tall f:File | (f in Trash and f in Protected) implies (f in Trash and f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EeFFmHnHMkEDj9RTo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:42:35"} {"_id": "XYPJmHykjA2mo7aug", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ttDJ474CJ9haRH5Ny", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:27:44"} {"_id": "yRziBMZWtZKoCKEYD", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NJRz29xjdLTZpPkia", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:13:03"} {"_id": "fzZsxMsDKm3YM9tyb", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7yPZkpPHp4JQ59gzE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-8 00:48:32"} {"_id": "opML5jHZNxnCGXEg6", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:File | f in Trash and always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4nMxcCmCLrT4JrCSH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:05:05"} {"_id": "8MecAmBgbcPppK4PD", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | f.link implies eventually f.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FKBGJpDvjDkrxRbvx", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:02:04"} {"_id": "Ddnf7PDQ4T8wJSYvW", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f: File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uGhdyCPZqoQYjtk2g", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:16:17"} {"_id": "kfZiDEDAFkYbMs2QK", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6dLaQ8p8sKA8B2sYS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:59:56"} {"_id": "TfLHJRLYbRYHMBfFK", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "PjjK6tBuzMnJWjdMh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 20:20:42"} {"_id": "xpmAFdRmwiumsJYab", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zLfNd2hbFZXGav8AR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:49:28"} {"_id": "6YmxWkc8PtXEqdafi", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways ( Protected not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EXr6zwiDDnz5u3Gay", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:46:04"} {"_id": "rpKs8EuHfzHiQXae5", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways ( all f : File |\n \t(once f in Protected) and f not in Protected implies (\n \tonce f in Trash\n )\n )\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "59bNTuzWFGpTyjS5W", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-3 11:41:19"} {"_id": "kb8KrpANCxg9XXcLs", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3w2MHeN3wNFKGY44h", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:47:39"} {"_id": "6fzeJSMpwTZSLRn8L", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways some f:File | f in Trash implies always f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CJTwJFXDnZnXyyS2G", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:12"} {"_id": "giLACBMjb56ywzJ2r", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\tsome after Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TH6j6gftwzvaJGhRr", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:51:26"} {"_id": "dx3Gqg4mTJEgbBwFr", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Hu9vcT9EEht6X3cRZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:12:21"} {"_id": "ewKoamLYFD3X8hxfG", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File next some File\n \t \n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Y2uxDCATc5xC7GkR6", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int->Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:59:38"} {"_id": "ucejabKiWj2eeHcfc", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jRJECz47kGdtS8awK", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:32:11"} {"_id": "arZ5w452ntPPhdQsF", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ja5Qj9xqCbriHafkS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-6 10:59:59"} {"_id": "ruNWAiX5jHHwcbuHf", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AMrvGc8ZgeyG48su2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:27:21"} {"_id": "JmW2cnrScjBDan7Mb", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \n\teventually some File - File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "yQ5vHke4QuPdFXwH2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:26:30"} {"_id": "TNBxQ2JBp3QzBD4wN", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:File | f in Protected implies f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3Xbp3wqJSvftvFFNy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:45:32"} {"_id": "ftHM5sN33NTFRrY6N", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WEtabbFXd2RkdsBWc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:08:06"} {"_id": "ryuhmSf2aw7ya3oXs", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n some File after no File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NaCvGiAFtLZf8JS3Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-29 17:22:11"} {"_id": "jMHNBRALXsRT4ymTq", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f:File, some g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ixHG3iTs9iyyc4dE5", "msg": "There are 8 possible tokens that can appear here:\nNAME disj exh part private seq this var", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:37:56"} {"_id": "iBLBzEQmsxwitqS8n", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:Trash | f not in Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xMoKq8pjF3BrBgFmQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:58:16"} {"_id": "mhYkfqSGPzN6JGjuC", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | always f not in Protected since f in Trash\n}", "derivationOf": "qKqtSCNN9Ea45MArz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:43:46"} {"_id": "hGWrydbrBGkFrLx6a", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CDtsrfQvkdNkFQdRZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:48:52"} {"_id": "tRDzp7vDNnPepbprn", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qa3tG8ij6Whu9TJr6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:07:04"} {"_id": "v654giz9YehdoCDCA", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | eventually f in Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "f4NhAP4kXLwz5NDLr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:24:13"} {"_id": "Fso6N7zAB8MDhroMN", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\tTrash' = Trash + (File' - File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RJkGKdeoKaYz3LRAr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:06:49"} {"_id": "mZbJmPW6aFRYmzNzp", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always some f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "i4rsQistCDjqS83EK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:10:11"} {"_id": "T9w8XuQioW8bHnkMa", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DW3jnYaP6XS4K5X9J", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:42:22"} {"_id": "XX7mpztNhCiKrKNLv", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall t:trash | always ( t in trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KbBLZrZpvr5cNERxk", "msg": "The name \"trash\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:10:39"} {"_id": "8Xg54Znk5zygoGY3x", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "DzA4GB8DBWAQNTRyR", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:28:20"} {"_id": "6Ajppa99Ej6juzG6j", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some File in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "72PuX2nWiRNRY9eTr", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:55:22"} {"_id": "2RLpjiZPJ4rFyKjjq", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "idAJeFyj4GpB3DPNj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:52:11"} {"_id": "QMmr6FK4aQBotC5k4", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all l:link | l in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RXCgYYRZd6uNwBujY", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:39:36"} {"_id": "QzQpgToNW32vPEgkG", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "HLGiKf3J2gbSRKi8m", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:30"} {"_id": "s5FGCMyEaqoHEpzDP", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways ( some f:File| f not in Trash and after (f in Trash and after always f in Trash))\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QKAgMhWwCu8gPnfBd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:03:31"} {"_id": "kXBF3YeytfmtD9PyP", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File'= File - lone File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bq9gMADR7vDF7guwE", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:56:46"} {"_id": "47mgLzWR88pbRYvQg", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash & Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Rad8rJh4N3ZFN8Eeu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 15:57:36"} {"_id": "PALZHQ7TcdtBpmJgW", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n}\tno Trash+Protected\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \t no File\n \t next some f in File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CZRh9SWXAYtdYPdLg", "msg": "There are 5 possible tokens that can appear here:\nenum fun let open pred", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:53:58"} {"_id": "zCdmyEmbxY6ScCceY", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7mdY49PdgRFsHpCzW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:57"} {"_id": "Zzhrng8i644ewyurM", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | after f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Dc5dhHHhwvTrs7EBe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:45:24"} {"_id": "QsGhbmqzdRXfFjBNo", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \teventually some link eventually l in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4ZnhPspD8dkzqwdmz", "msg": "The name \"l\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:30:24"} {"_id": "epQ8SoffjZEs5HDxB", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tnext some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4AkbQdmD2Df4rnwZ3", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int->Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:34"} {"_id": "2oFHpXybWYHYp94WS", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always f:File | f not in Protected after f in Protected'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8Txadrqd67aBb2qcb", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:03:27"} {"_id": "beL3NDPugdLpzuTyX", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash'\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LYb5CN6Pa3efktobA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:45"} {"_id": "LK85gXmcmJfuJKnmY", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash' \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "o3iG5iyj7on6pkT4Z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 21:06:14"} {"_id": "gi5ko7RXYoRhJGK4Y", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (some f : File | some f.link implies eventually f in Trash')\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "baLfa5utchAB5WMgd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:55:25"} {"_id": "bqAjPhrnrPWojrbLn", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always some f:File | f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iZJEjauSzkhnurdY3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:12:45"} {"_id": "G6orGemBdZAkYe4Dr", "cmd_i": 19, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | since f not in Protected)\n}", "derivationOf": "MEX54YXZZ7MyogQYj", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 20:22:31"} {"_id": "kzZK3sMjvDRqJwhYW", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f : Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f : Protected | always f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8zbn9sKC6iHz433iu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:50:15"} {"_id": "rgfnuu857wRHv3gcW", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JFhu6SRXybNAT83Xb", "msg": "The name \"a\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:33:08"} {"_id": "SyWjqE9P9yYdrRnty", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways some f:File | (not always f in Trash) releases (f in Trash and after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YeSqwerdsjrskASDJ", "msg": "There are 31 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:06:48"} {"_id": "koptRxpMsCh9Tt2yv", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "u9DkpyfhTXNkLfZFW", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 15:59:58"} {"_id": "5eT7wTw5kT8DwTbu2", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "m7Zbue483cMrMXHLZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 21:53:44"} {"_id": "o3iG5iyj7on6pkT4Z", "cmd_i": 17, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways f:Protected | f not in Protected' implies f in Trash' \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "855829Kr2cvuMTcdX", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 21:06:07"} {"_id": "K8MmycubhbXWjc7aJ", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GwKPeEpzZvPktBExE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:24:59"} {"_id": "5t3RXEarYowo3iKDH", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yM77enpJd8pxx4gm2", "msg": "This expression failed to be typechecked line 73, column 2, filename=/tmp/alloy_heredoc8571417666476180388.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:29:23"} {"_id": "9iEeYSYbCzqASuuFS", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (some f : File | f.link implies f in Trash))\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KvM3RzvtLx8vuYms2", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:11:30"} {"_id": "tkwkizD2kj4QixxmL", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bPHssAJi2KdSHDv2Z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:11:13"} {"_id": "Lr5hMdtjdYgosSXrq", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eQyo9iKqeJQcQFoWX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:33:49"} {"_id": "oTvgvW8Fp2L5gzcgw", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (File in File' and File != File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "asCyCG8ThfYbBcN8h", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:54:08"} {"_id": "A2ige6mbXYD9LqpQi", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways after ((File & Protected) in Protected)\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9fbbhrfh7CEfoEDtL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:20:30"} {"_id": "6uYJWWtSsAtrG4gQw", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (some link implies eventually (some link.File & Trash))\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "e8fZnb5mMDhaigsMt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 12:30:00"} {"_id": "qg4SaGmNAdRghkBdA", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "M4APH3qafDXoTpHKd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:22:06"} {"_id": "L6wxFyTzbhpmckXc4", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n eventually (some File.link in Trash) \n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GkwtnGNMkDd7q2ohT", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:33:51"} {"_id": "h5m8PiqqCpKJ83R24", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:File and eventually ( f' in Trash')\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Pgpkh9pQJzML9n5Et", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:20:00"} {"_id": "qo8BJ25gcwjo43PLT", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall f : Protected | eventually f in Trash implies historically f in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "z3jxddjGv8JMDtvmC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:17:54"} {"_id": "2bBePWaem8xsJNksA", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f: Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hggfb3pu2zGX6NTAt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:45:24"} {"_id": "gN6cAsDXM7TNRwZHu", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qHGTKdoYF8GsgnyP4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-9 08:42:58"} {"_id": "RGaHt9KtHJyJtiDhW", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected and Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PzwPo4Beme7r6NDcD", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:41:59"} {"_id": "icXDpWFnkSg9s7pC7", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f1,f2 : File | f1 -> f2 in link implies f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "mXiGDNPBL3GjbYnZG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:42:19"} {"_id": "8Xsn949HmRd2ayg5x", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4qWmNsqff4znFQa5R", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:33:38"} {"_id": "Hqxarv8vTSSTuBmz9", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Z3PpdBtzgzc2BsY8v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:15:05"} {"_id": "aPTrdLZnwPhfBrrmR", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | f in Trash after always (f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "yjdexYq3KxqZn3YeR", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:11:57"} {"_id": "kqcBYFQDTT32oAMbK", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways after ((File - Protected) in Protected)\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cbrh4nzPGCqLy9n3w", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:45"} {"_id": "gSdzgZe34ztE4vykn", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "F5KqSTY9BCoQGjuqY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:49:46"} {"_id": "4ZnhPspD8dkzqwdmz", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \teventually some l:Link | eventually l in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ccjxSTpicMzcQJssZ", "msg": "The name \"Link\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:30:00"} {"_id": "HgqpbHM6omH4kx8Nf", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all t : Trash | t in Trash since t not in Protected\n}\n\n\n\n\n\n", "derivationOf": "GPDqTWCdsiAcWdR4f", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 232.94270833333331, "y": 298.5}, "File1": {"x": 465.8854166666667, "y": 298.5}, "File2": {"x": 465.8854166666667, "y": 99.5}, "RejectedBySolution": {"x": 232.94270833333331, "y": 99.5}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2020-1-19 23:23:33"} {"_id": "y72BvA8rGXsmPskMG", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\teventually some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pvxf9z6k6FWgnsQCM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:44:54"} {"_id": "JLFeE4WJHRzmKr4z2", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome File\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5iit2ZNkjmLF5W6kF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:04:41"} {"_id": "YeSqwerdsjrskASDJ", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways some f:File | (always f in Trash) releases (f in Trash and after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "s5FGCMyEaqoHEpzDP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:32"} {"_id": "XEgzhuDSMpMgs4QpR", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in f.link implies f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "w7hDXrSYsBTQE4krr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:24:58"} {"_id": "qXy4fHLtG2rZGBwF2", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tall f:File | f in (Trash & Protected) after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jzaosAJZ8cbXtKN3B", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:40:24"} {"_id": "y8WHwmERnxEdHt8Cd", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rfQ3RJmKjDwYbPdwT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:07:29"} {"_id": "cNYA6qDCjGJvGbPAk", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File' = File-Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mQdHAeCMR8DYp8Psi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:54:49"} {"_id": "TqKMLtw9CZ4qpBCKY", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File until File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HSmN3AykgxFZ5kKKD", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:45:57"} {"_id": "sSWa3oB7SgRYdjHTq", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "a7X6yqaDc4n8GotgC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:12:21"} {"_id": "JSr6p7DSFcf3Ycumq", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always (some File)\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gN6cAsDXM7TNRwZHu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-9 08:43:53"} {"_id": "TWnMrBhHJobbkqx4Z", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uiY7mXWA5fBvhHLES", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 18:38:55"} {"_id": "jaGYEfQE55rKZq75g", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t(no Trash) and (no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:Trash | eventually File \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "oHstcqYrZHnHdHbGL", "msg": "This expression failed to be typechecked line 42, column 17, filename=/tmp/alloy_heredoc5566607793771449287.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:52:18"} {"_id": "RxvzyxG2cEFWjpv3r", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\tall f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WN3dWTaEB82RW6H43", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 09:55:01"} {"_id": "JFhu6SRXybNAT83Xb", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | eventually a->b in link after a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Q3S9iAmPRBTZMjDPP", "msg": "The name \"a\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:31:42"} {"_id": "CCCydEHDmC5pMzLxY", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash triggered f not in Protected \n}", "derivationOf": "JwMnPXzZLEpfEzXb6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:46:17"} {"_id": "eQyo9iKqeJQcQFoWX", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways eventually File in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QFnrCBxCZ7icLWuC6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:33:42"} {"_id": "JjJiypd6hSM6xvhJq", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always (all f : Protected | always f in Protected)\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YttAicfP4oK5AzaiF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:57:58"} {"_id": "tSBPdw74QgdFoNNwR", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some Trash ) \n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QDC93LqrJFso4C7Sz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 16:02:23"} {"_id": "xCwKRhhwcSafdXQER", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually link.File in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "k8WGeiqrWZ98Q7BA2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:19:03"} {"_id": "5CgTHZgtRFujui9eD", "cmd_i": 14, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | (f in Trash and f in Protected) implies (f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually f:File | f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SLpz4Djidgm8peC7N", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:51:41"} {"_id": "yyqNfwsXm7DiMvR5C", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all f:Trash| f in Trash') \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash')\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8qY5EkDJdCJ87L2pi", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:15:15"} {"_id": "TQ2M66AbXMArkXNs7", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "piMFNMjQvTjpTxyMA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:56:29"} {"_id": "9rPjT2Lgd8JhCb8fn", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1->f2 in link implies eventually f1 in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wYHvGzAaYzfxSKtNK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:52:14"} {"_id": "kbP6GGAyX7QAGf4hw", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually( some f:File'| f in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZQhqM6MYPeamGmo2s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:06:13"} {"_id": "mMBQBHkLB9cbNncvz", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\t\n \talways all f:File | f in File implies always eventually f in Trash\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jN5Kf6hBhF4XFQfHB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:17:46"} {"_id": "dsLixPArcFJR4gse2", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all l:link,f:File | l.f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QMmr6FK4aQBotC5k4", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:40:02"} {"_id": "YGvnWscgR9yZ6rtmK", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always Protecte & Trash not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "t7oWgcrjLpbYYyr63", "msg": "The name \"Protecte\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:06:02"} {"_id": "rGQbKM57KDQSc9tMe", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gTGuowAsSBK7PLWDj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:40:41"} {"_id": "dbXaBd8dCcPpg7TAE", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File \n \tFile'= some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EAXmaaGerwaY54R5i", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:48:18"} {"_id": "zWEvN4vHBJj7fcjQn", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash since f not in Protected \n}", "derivationOf": "uAbv6NjqC6CJX28Cx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 19:29:08"} {"_id": "WZStvhb3sf2nwnbnF", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (Protected' = Protected - Protected & Trash)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "v47jPMDMdRNmEPcFy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:30:14"} {"_id": "bKX5s9pfrzrbb3qZv", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "oPKmwp52rJxKK4nQ6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-2 13:22:51"} {"_id": "qa3tG8ij6Whu9TJr6", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f:File\n \teventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JLFeE4WJHRzmKr4z2", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:06:52"} {"_id": "CF775bN4q9xe3HisD", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | always (f in Trash) implies once f in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tNYhx8TtDTaNtZEoM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:27:31"} {"_id": "Pa2KH2EWJDCXoDgX9", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rQiHpZRTeqjuLPZ6K", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:52:33"} {"_id": "xZPYt8FCvXCWA7pz6", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all f:Trash| f in Trash') \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash')\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yyqNfwsXm7DiMvR5C", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:15:24"} {"_id": "iRFNkQbEek4ALv3Ph", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "zRxamj9XpATDrckN8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 16:52:48"} {"_id": "89pzjDpv7Srmd4ntF", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "eP3GJ7mZdS7LQYv3b", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 16:50:44"} {"_id": "2YEPgmcbg9WPCs4Y4", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n some f : File | eventually (f not in Trash and f in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vioDzq4QADwHoax9G", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:48:06"} {"_id": "8nfajn8gYg7H6426r", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash | f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HtbiC6ThhJSZgQB4s", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 19:37:44"} {"_id": "8x4Shj67PijTgxgsn", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n\talways all f:File | f in Trash implies f not in File' \n \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \n \talways all f:File | f in Trash implies f not in Protected'\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MsJdJknAuudPnL2Mw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 20:49:41"} {"_id": "4xEpgLLf8Gm2udezC", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tall f : File | f in Trash and f in Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "crdejFY7JqAcKT9DF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 22:54:08"} {"_id": "X4S4te8HdByZhZaT2", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash implies always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HZHFtAfFzoApzE2e8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:59:39"} {"_id": "45uZoyFEhKfsxB6JF", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (some f : link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sZ6K4wWHzvzmr83og", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:23"} {"_id": "m5yKnMMrbaad3DNzM", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Protected and f in Trash implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QwqwCCetR7AdLW8Kq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:59:44"} {"_id": "ugPhuHDLrP2yaicnX", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all l:link | l in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2qwB42TnjQjenGbov", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:18:29"} {"_id": "8GJBBPAhqEBtDLCzv", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways( some f: File | f not in Trash and eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uSc6tnhdZ9aFXH3Ro", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:39"} {"_id": "mvJdxuNoDn8m5n7Hj", "cmd_i": 14, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Protected and f in Trash implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xJ8Bp6Q3XsfxE6J8w", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-8 00:58:50"} {"_id": "AobqzkBcscTnfCGrR", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f, g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \talways Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "B3TcLpqzsgAqswZef", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 483.19375, "y": 199}, "File1": {"x": 724.790625, "y": 199}, "File2": {"x": 966.3875, "y": 199}, "RejectedByOracle": {"x": 241.59687499999995, "y": 199}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-10-31 11:51:07"} {"_id": "eZXBuQYCwqYbiHZLW", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fB4nh5fC4SdqcEetk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:42:27"} {"_id": "h6NtSdZETLk7pYErw", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HPBve2KYXeoBekWBR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:41:54"} {"_id": "n8rWovppqXekuSBi2", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some File and #File' < #File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MRAe5B6FA3KGt9vrG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:00:33"} {"_id": "NNZYx2HufY4Kh4nsg", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "aPTrdLZnwPhfBrrmR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 16:12:28"} {"_id": "rzeJXogwRkwppEo4G", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\tall f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qqEvjPssHRtknFMXk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:38:07"} {"_id": "PNoKqxGPXat6dfi9A", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:06:49"} {"_id": "EwXabmSfX988Z4hk6", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "3vKbvNwtvZL3cGbCa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:08:24"} {"_id": "PGim5o8Zj2zoR23FK", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Zzhrng8i644ewyurM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:47:05"} {"_id": "vQAxgBb3F22X8m2j7", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tProtected' = File\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FwTyKteJWkt22PSJn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:39:34"} {"_id": "L2hcPR7Mg8rF6bkxn", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually always some File' in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hPMW8Ax5zup5kp9qp", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:07:54"} {"_id": "GkwtnGNMkDd7q2ohT", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n eventually some File.link in Trash \n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QukZCnwFMCKTdFe4Q", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:33:35"} {"_id": "wTgYgFwT6zYWxYxur", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4JHQyzHAkE89xLMfn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:58:36"} {"_id": "93HXbNoz2sJB8Hki9", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome File eventually no File\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Sq9ZFW5mpmNwB6bEZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:56:36"} {"_id": "5kRcDZ5dp87nycpfW", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "m2vFmD2izRcxgdRkY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 18:39:22"} {"_id": "vtH6okGoqNXQ2SxiB", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1.link = f2 implies eventually f2 in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "x3W7G5xfQSywFEhEf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:35:28"} {"_id": "idPRg7Nbqw2Ze72ys", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "g3JdjguzZm2yFLKLW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:08:09"} {"_id": "KjgWduvC6ozqXjvci", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually link.File in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "m8jyysBGH3pWr3soi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:26:05"} {"_id": "ba32kDT9NNBrLPQTi", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\talways all f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "GvgH7K9hhKMDaDW7W", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 11:34:22"} {"_id": "8WfMzTvFcjT92DAoR", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Bj4CmgG4Jp8wncz5b", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:14:12"} {"_id": "f86XjMkMtvPG998JE", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f : File | f in Trash since f in Protected\n}", "derivationOf": "twFqjNG8vipXgcEXu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:28"} {"_id": "ix6v7CieKPmo2ma4p", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f,g:File | eventually f->g in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "z838wA28tFe9WYbLT", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:32:32"} {"_id": "axv8enTBupBncs38Y", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | (f in Trash and f in Protected) implies (f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xehHKpnCGwwG3RgM7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 20:50:08"} {"_id": "fkXwyvMwsr6yp5nLM", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6pCTFDJZZ6vF4cxpx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:55:00"} {"_id": "ZEsoGT3TN63s8qPbN", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NoudCeRzTMk2XYeYw", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:33:20"} {"_id": "piMFNMjQvTjpTxyMA", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gi5ko7RXYoRhJGK4Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:55:40"} {"_id": "2HeEPat8GSjECXj7k", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | File'-f)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sXKfufsNiryJ4RNgc", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:40:16"} {"_id": "SyNvjBuiQGNaiAfvu", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually (f not in Trash after f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "retfgJtdhaeSkgR4u", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:00:48"} {"_id": "aGg7ka5PKiSPQZKAd", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File, l:link | l->f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "35HreCoEKaP2L3RgX", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:19:33"} {"_id": "SpzyeKM5PSZhGFw8G", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\tProtected' in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tQmC5t4GN7S9MbQzX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:44:15"} {"_id": "BFbBhR5bNHPQMhKJm", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | eventually f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jJi5NjmLWdbD3yp6n", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:50:03"} {"_id": "wmEvHmJuaxG6q5ZzM", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File; \n \tFile' = some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zHW9bqX7fxzJkhPHy", "msg": "There are 23 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ disj fun iden int none pred seq sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:48:48"} {"_id": "hmNNZBzmEnpmwNxbn", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "q2nWGdxwMtHJFychk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 20:20:07"} {"_id": "FwTyKteJWkt22PSJn", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tnot Protected & Protected' = File\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rzeJXogwRkwppEo4G", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:39:18"} {"_id": "uRPv7DthKJ4nhJSB2", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9vDQHbRTfAPrXNRE2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:42:34"} {"_id": "F5KqSTY9BCoQGjuqY", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash;\n no Protected;\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "msg": "There are 36 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:49:33"} {"_id": "5iFdhhFELT5o9gndY", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (some File.link implies eventually File.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xFd2Lx66M7qrW9soT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:01:08"} {"_id": "iyLCJB6zbFeCxG8Av", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some f:File | f in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\talways (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iTHXfva79RpDWFHrr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:31:06"} {"_id": "z5FmabrbEXez9yB6Y", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f : File | f in Protected implies once not (f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "njA2gKaQsDK6gE2qW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:06:35"} {"_id": "YeMGkZWbb7XtzcWST", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \tsome f:File | f not in Trash implies f in Trash since f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vkXAvQLuRKRA2mfhs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:35:34"} {"_id": "bF8hYD8mG4WDWaDXY", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | after f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rDEWKiqgrkQAHoQWi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:44:25"} {"_id": "XJjQk3c2QJj7BHjxK", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always some f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mZbJmPW6aFRYmzNzp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 22:11:35"} {"_id": "Dc5dhHHhwvTrs7EBe", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f : File | eventually after f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JxRBojqfhLK3jqA7v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:45:01"} {"_id": "X7rHTL92jbHxfvEPX", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | always f in Trash since f not in Protected \n}", "derivationOf": "fjfotQGzXxNrbS3dF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:43:00"} {"_id": "dkbRLCYS7EAcBvZse", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | always f in Trash implies f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rmF6ZHHvcvMitEw99", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:16:22"} {"_id": "MFTgQM2vsRkuHQGgu", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (always some f:File | f not in (Trash & Protected) implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WkfxoZDDEuk9dpmYu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:09:50"} {"_id": "deXZJNB9Cozmsm6dH", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\t\n \talways (Protected in Trash implies no Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CPvbP4sLgBBrznYYr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 10:56:03"} {"_id": "PoHTydG5YrvETJCKt", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tall f:File | eventually some f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TqKMLtw9CZ4qpBCKY", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:47:44"} {"_id": "SzTSdQjmZw3g3TxFS", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash implies always File in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7NDfNAte5497nsToh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-22 12:32:19"} {"_id": "6pCTFDJZZ6vF4cxpx", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f : File | eventually f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rxasa4ARNftYhvHbu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:51:11"} {"_id": "D3hggGGtTwqjyYA6H", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | f in Protected until f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always (all f : File | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CcMt7AYPASmTL7FRv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:43:53"} {"_id": "oz9keCq89FbgTtZhG", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways some f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PL8mqTLMYigpTLWGZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:29:17"} {"_id": "upLcbQb65CjANu3Yc", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "49MJQbS6SitmafKXY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:36:17"} {"_id": "NJRz29xjdLTZpPkia", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\tsome Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CtBSdhemMutpjRuwn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 12:12:58"} {"_id": "Gv54ooyXmaL5w2PNP", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aHyvCFHShHjkf8yaE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:47:40"} {"_id": "EmwD3aA3jwGD6LWmf", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f : File| f not in Trash and eventually f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gQ9K7kgvw4dKTtLMS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:53:54"} {"_id": "jwDPw44gCoLZjsYpo", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash && f in Trash until f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "Bd6eDqEnGfEjQ3saR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-2 13:25:05"} {"_id": "TyHwxSntn9EmBHi8w", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Protected and f in Trash implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p:Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p:Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "nmxSzjNDW4FHzHPWN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 01:04:44"} {"_id": "rxuFXvPfkksqs7dk9", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash implies after f not in Protectede\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NqmELDfttjRCSxsEC", "msg": "The name \"Protectede\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:31:23"} {"_id": "2mahNHhQNvDCe7YFg", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways (all f : Protected | f in Trash releases always f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Wp65XgLwyLp8wR6jx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 19:50:42"} {"_id": "XdtKyFZCN6kgbQdPN", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually no File \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "v7ftRDxRSEB4M5GTA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:05"} {"_id": "mJ7wH9yLtT8Lka7vb", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:File | eventually File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kn7x3fNcZdNtDMFyL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:00:42"} {"_id": "PLJJw9fsM5TRMQiy6", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected && Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yhn4FrKG6Dc7b2NaH", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:40:23"} {"_id": "ECPiXaeXBxneX46sZ", "cmd_i": 15, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tqMDZ3pcQXu7XhY9w", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 21:01:32"} {"_id": "aoDa5gZQuHptNqN6c", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways( all f: File | f not in Trash and eventually f in Trash and after always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "h6eDM8PLum9fbzCPC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:05"} {"_id": "2zyv6mSDwrE5AkvSr", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ShDnLvErZMEFfBXiA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:23:11"} {"_id": "dBuBJPqgKQCJFoxTJ", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZGknyF5y8szdBMMCH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:54:31"} {"_id": "L4rzz7DZGxysaXrmR", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually some File.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "eEysM9dgSQaCgZRZ9", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:29:05"} {"_id": "9Qz5xfsLeTscZ9Atf", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n some File\n some f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TeCzqCfRYcR33hy7i", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:05"} {"_id": "CtBSdhemMutpjRuwn", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sSWa3oB7SgRYdjHTq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:12:27"} {"_id": "a66JmFCRK38bMCnhN", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ljx6TqkijRprpQTuD", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}]}, "nodePositions": {"File0": {"x": 592, "y": 199}, "RejectedByOracle": {"x": 296, "y": 199}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-11-11 21:56:14"} {"_id": "bFjffW9XTBkrfxBQq", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "iByQj3K9agfKtPKf3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:52:00"} {"_id": "h9YPs7E5r3KbhoAZP", "cmd_i": 18, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\tszd\n}", "derivationOf": "bH4Dj6hAETin9mBc2", "msg": "The name \"szd\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 20:18:14"} {"_id": "85A73yE52ESfnPN35", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fAyxEzSrte5X3cQpi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:10:24"} {"_id": "Ec8crWQdLnHJ93GmC", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash until f not in Protected\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "77xWXRMXv2RnLiz2L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:56:51"} {"_id": "b39ujwSWP87vaDiSw", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "apmvtF9ZrPZv9DSFa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:44:01"} {"_id": "82zbqgBweMCE3Pfsa", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WXfDqeZJcefnZMMDe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:59:02"} {"_id": "se8FtoMA6YA45RvS3", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\teventually all t:Trash | always ( t in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pZ55SCfnvnvxqBsSw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:49"} {"_id": "MeE3DFfqNyDGofdZC", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f in Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yFZWchtizHqtESTFP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:08:55"} {"_id": "sY954z4LCTQwtYBns", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CfJKXwGnvThC5Dpnc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:33"} {"_id": "yM77enpJd8pxx4gm2", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tall File after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yYAtSAgvGkmZBASgy", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:29:10"} {"_id": "bnduceBFB6W2TSG4B", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some File in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Diob2JCh9yei4Cp5J", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:59:18"} {"_id": "cKu5tjFhYko5BEp6f", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\teventually all f : File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tdByu76MajY4njqYu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:52"} {"_id": "bH4Dj6hAETin9mBc2", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 20:18:02"} {"_id": "zPdnksiWSoQXYWhP6", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n \n always historically Protected = Protected\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YXBnQi99CZHGCwMzg", "msg": "== is redundant, because the left and right expressions always have the same value.\nLeft type = {this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:36:09"} {"_id": "cbrh4nzPGCqLy9n3w", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tafter ((File - Protected) in Protected)\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NLZj6Npak9Capwspk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:21"} {"_id": "NwshHL6AX6T4jsnEQ", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash & no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "msg": "There are 28 possible tokens that can appear here:\n( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 04:53:45"} {"_id": "GPDqTWCdsiAcWdR4f", "cmd_i": 19, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n\tTrash since not (Trash in Protected)\n}\n\n\n\n\n\n", "derivationOf": "zc6ywHSYYtc3zLXJe", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 23:23:17"} {"_id": "rHh8ph9Dqda3AT6ZL", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\talways all f:Trash always in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9EDoWgh7D6pz2x6uG", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:18:00"} {"_id": "8JZWoNDSrQ3PXdeGq", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "waXXhgPZ4CYhAqtue", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:50:40"} {"_id": "NH4xeSXpJtwhmB6vK", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DPb2XashocbtHu8gP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:08:50"} {"_id": "BL9CLcwtQpakdAsLc", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "3rZNNFEPrFgQiK4Gh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:49"} {"_id": "dKEZmi6fLwigwSqCu", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash & no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "msg": "There are 28 possible tokens that can appear here:\n( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:49:59"} {"_id": "vdLtt2kLTubMjFcmm", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\tafter some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "giLACBMjb56ywzJ2r", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:51:35"} {"_id": "jN5Kf6hBhF4XFQfHB", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\t\n \talways all f:File | f in File implies eventually f in Trash\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DcXTqWsL8WzbRTEms", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:16:44"} {"_id": "by84W2FsqkeqnthRS", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : Protected | f in Trash triggered after f not in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bX5Qh5ZTpT9EE4KBz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 14:12:14"} {"_id": "fHQiNMJvmAKG3zsdQ", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (\n \tall f: link.File | eventually f in Trash \n )\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wbqA5TB78HXEtHYEz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 19:03:10"} {"_id": "6GWvFmLpHjBBCR6Qd", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : Trash | after f not in Trash\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YhkW4j8E2YhhJRSxc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:41:11"} {"_id": "57TuLfdtDJDrsFDiP", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (some f: File | f not in Protected implies f in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jxz3foXxTf7E8yf8M", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:36:31"} {"_id": "6bSaAaPzE5zY9JKwv", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | some f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RtWJWv8ueT99gWzDZ", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:24:56"} {"_id": "6zcwfWHuoFL3qkT7F", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : Trash| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4shgL32jrPZqxggkS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:58:53"} {"_id": "rjZBB22au4p7u2R2A", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 18:37:26"} {"_id": "zMAihenxHt4L2bnK2", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "95B2JdMEtdyb44wYH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:06"} {"_id": "vyw2XopD7vcJcnc7f", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\teventually all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JnSQ9G5jFfbaNp7tL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:29"} {"_id": "iTHXfva79RpDWFHrr", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some f:File | f in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "riE34P3kv6GxqbFpd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:30:09"} {"_id": "EdGXqKe7Nzq3oR88e", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all link | eventually link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dN3pgeAfx7TMTjwvH", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:32:17"} {"_id": "xPNDNP4NLgCRvhS4F", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some (File) in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SfSwXRFJ4cg9b4Spc", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:48:34"} {"_id": "hkPmBZ2GJuK9yAWbk", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:File | f in Protected implies f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sFL94joPERGbCRuQC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:46:05"} {"_id": "DfxzKF7gbPyAkaXbP", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n some f:File | f not in Trash implies eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uMqqyzbh9Ducnfzeh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:19"} {"_id": "zeWWzGskAsEi9C82Y", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall f : Protected | (f in Trash and f not in Protected) until f in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hszrntuGzvRQ4Ltrf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:12:20"} {"_id": "wbqA5TB78HXEtHYEz", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (\n \tall f: link.File | eventually f in Trash \n )\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nv8Qbu5DCast97byo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-2 19:02:35"} {"_id": "BsLMYczRZ7YrZH32h", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nsG5AAdAfwcTk5NWg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:40:56"} {"_id": "TBJNx238okkqsL22H", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iRztRKZ6AksjdCqL7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:50:51"} {"_id": "ZP9AHoR2ZtASjF5dS", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n eventually always some f:File | f in Trash implies always f in Trash' \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n\talways \n \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "feAqeidonnHemeEiG", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:20:59"} {"_id": "gSkCbMwgkcwhp6hBZ", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \teventually some f:File | f in Trash implies always f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6fzeJSMpwTZSLRn8L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:32"} {"_id": "b6XnWtBTrYvKjxNGs", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways Protected not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tP4wF8dBkyEAcgo88", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:33:11"} {"_id": "EFNSxHStKfAXRDhQZ", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies always f in Trash\n \t\n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "heLSzqFneA5Loezp3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:19:31"} {"_id": "3KS9XkZjn4h6nhe5z", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some link.f implies eventually link.f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "whJKWtjtw2wNQNLiD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:02:48"} {"_id": "c5JRBQLeKP9oYTWzw", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways (all f : File | f in Protected triggered f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "63F79avEzxQYA7veY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:43:05"} {"_id": "iZJEjauSzkhnurdY3", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (always some f:File | (f not in Trash and f not in Protected ) implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MFTgQM2vsRkuHQGgu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:10:19"} {"_id": "asCyCG8ThfYbBcN8h", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "osM7SzcYe9zAKyRMD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:47:59"} {"_id": "y86LpqDDS6edbhJ6J", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (\n \tall f: link.File | eventually f in Trash \n )\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "H9hdkzFnqiB2GWjYj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 19:04:13"} {"_id": "6kJwfroQEhaFvk8Xz", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hGJEGCa4EY4cRvdrh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:31:12"} {"_id": "yxt9vT4M3bmLtWjCs", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1->f2 in link implies eventually f2 in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "557bzMwP6hzjLzjis", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-8 00:52:49"} {"_id": "toDv6FRfGb4hYgQrh", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:Trash | always f in Trash\n \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | one f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jzv82LKu3Pw3FhYpM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:13"} {"_id": "vCrtgeqScz5HoHNJE", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\n some File'\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "byt68hBWo35XsK8eu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:37:45"} {"_id": "qqEvjPssHRtknFMXk", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\talways all f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kJ8JRptcLyXTnfFA5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:37:33"} {"_id": "fFCBZjwHP6kut5sDQ", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n\talways all f:File | f in Trash implies f not in File' \n \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \n \talways all f:File | f in Trash implies f not in Protected'\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6kgs78upr5uFEsRwT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 20:54:20"} {"_id": "cQcDrwqPdMEeQz2BX", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways some f:File | f in Trash implies always f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rtiJinbXHGAgmE9yi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:12:00"} {"_id": "p3guyS5ZDEyeBqnpR", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f:File and eventually f' in Trash'\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5pXZMGSdnQfeEjjkp", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:11:37"} {"_id": "cdhMzf7NpkZgGPq6h", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File in Trash\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3bDNuX2HwRpvFR3TG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-29 17:27:51"} {"_id": "557bzMwP6hzjLzjis", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1->f2 in link implies eventually f1 in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9rPjT2Lgd8JhCb8fn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-8 00:52:18"} {"_id": "47PbKEc24rHZCLn2s", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gSdzgZe34ztE4vykn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:54:15"} {"_id": "KYKp5pGqT2rhDkR9N", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aFLuW3G5ny4iizE7E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:49:02"} {"_id": "vdYP6eJ6hodqbaedX", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | f in Trash \n\talways f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yRworpgXpcizd7hdw", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:15:21"} {"_id": "zYMTBzSqRmibWhkCJ", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : Trash | f in Trash since f not in Protected \n}", "derivationOf": "zWEvN4vHBJj7fcjQn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 19:29:18"} {"_id": "GTa99bScYipP2fKZa", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually all f:File | f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ax6rKurLCHm8YuZiG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:26"} {"_id": "2rqPjqgkqgjSZ3hcf", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tall f:File | (f in Trash and f in Protected) implies (f in Trash' and f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yN6E7YKLHG86jj47R", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:46:39"} {"_id": "ZA2rdHjkSeCPhYwBs", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tTrash & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RGaHt9KtHJyJtiDhW", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:43:25"} {"_id": "MFGMLsYkYX5XuC8sW", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome File in Trash always in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KYKp5pGqT2rhDkR9N", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-8 00:49:42"} {"_id": "kZAiMBhFQcP4tMGNR", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tFile' = some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bgg4Brm2DHTRhkC4Q", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:56:59"} {"_id": "MvbnsywSxf4E5HBor", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tall f:File | eventually (not f & File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:File | f in Trash and always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "n5itEYXMXrJ5voMjP", "msg": "This expression failed to be typechecked line 41, column 27, filename=/tmp/alloy_heredoc4754732924336719235.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:01:39"} {"_id": "mQdHAeCMR8DYp8Psi", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:Trash | eventually File' = File-f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NArvDJfSvPsAhssag", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:54:04"} {"_id": "uGhdyCPZqoQYjtk2g", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f: File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways ( some f : File | f in Trash implies always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HeSnqHNDLE4oqPgRn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:37"} {"_id": "S6gFmgmKJTGpcceRj", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways some f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MFGMLsYkYX5XuC8sW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-8 00:50:16"} {"_id": "2KyCuqZtsYPRovWLc", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always (all f : Trash | f not in Trash)\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sGbQJR8PgZeM7xXA8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:12:07"} {"_id": "qDPQdHpXNgW5MSfvv", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sGKuemM2e9jGk3Ypm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:53:26"} {"_id": "KEksisn8hw3Hzrhwi", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash & no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xpmAFdRmwiumsJYab", "msg": "There are 28 possible tokens that can appear here:\n( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:49:48"} {"_id": "eyYEBo4PBTvd9KK3h", "cmd_i": 19, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f in Trash since f not in Protected)s\n}", "derivationOf": "q2nWGdxwMtHJFychk", "msg": "The name \"s\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 20:20:11"} {"_id": "TeCzqCfRYcR33hy7i", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n some File\n some f:File | eventually f in Trash'\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "oQX2g4h6DRnuSshyf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:55"} {"_id": "snh4vNTWEtkJdht7Q", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all p:Protected | always p in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "o4Pdy26hGoPBrmiQh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-8 00:55:19"} {"_id": "hSDqCfRrhGdbswfrd", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until eventually f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zcbi4XaL7KLwmaLxr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:53:44"} {"_id": "BnX3ritfpFQNpuyed", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all f:Trash| f in Trash') \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \tafter (f:not in Protected | f in Protected')\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hEWd5n24fEkr9RtSx", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:18:56"} {"_id": "4eme9srL2eEbi7D4S", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "NFrmTiQmdadXxxStm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 17:13:55"} {"_id": "5xB49rYiDPDoqerPH", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pRuiwSxSu3QsyM8vw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:20:55"} {"_id": "HcvsFQdBvPvRF8zK6", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HtNQnf85WYG6KM2DJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:32:19"} {"_id": "ax6rKurLCHm8YuZiG", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QLfxQAiijvatowQSP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:09:47"} {"_id": "EKhXxzj2zhuLF6MDn", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GBqKrzCKp2xJzzK7b", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}]}, "nodePositions": {"File0": {"x": 400.53125, "y": 159.35999755859376}, "File1": {"x": 534.0416666666666, "y": 79.67999877929688}, "File2": {"x": 400.53125, "y": 318.7199951171875}, "RejectedByOracle": {"x": 267.02083333333337, "y": 79.67999877929688}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-10-31 12:50:52"} {"_id": "CfJKXwGnvThC5Dpnc", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n all f:Trash | always f in Trash' \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Giq3Tg2ePnrNNpdZk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:29"} {"_id": "7mdY49PdgRFsHpCzW", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "c9F7REYrvZFWoxoJk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:21:53"} {"_id": "pyTpP5b6bndv47zFy", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n eventually some f:File | always f not in File'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NH4xeSXpJtwhmB6vK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:35"} {"_id": "rJ2KiWow3kuYxcZop", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all p:Protected | p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hv2mBh38o6s3WB6RC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:42:12"} {"_id": "dtdwPoK7K3DeH7vvS", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tno Protected' && Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GnpvadPLkrw59g88f", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:40:04"} {"_id": "qrseory3n7Ay39gj5", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tTrash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WvkXnrFFB7cfx3mS6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:19:05"} {"_id": "MBLnJRevwLs242HvR", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually( some File in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Fb5vJfk6pakrBWowW", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:01:07"} {"_id": "S4kqo6K7jPpdsmZjf", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:Trash | always f in Trash\n \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | one f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iJXGatsNy4bzk3WE6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:24:40"} {"_id": "EjHAxzSA9cCqQ6e2Y", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FQ2a6Hfv94ki8jWo4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:46:16"} {"_id": "Szr2QD55bRviL3bzB", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f not in Protected implies f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DkqEonRWW57A48o2q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:48:32"} {"_id": "h6eDM8PLum9fbzCPC", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies always f in Trash\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BxbDnH6AatrrTLh37", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:21:32"} {"_id": "8azgmu8FWZ3r5nQmY", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vGksb5hNJ98ffnn3A", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:15:33"} {"_id": "ygutz46C36WDfNveD", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually f in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kG94Pog2gLwbhgv7u", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:20:33"} {"_id": "ZiBEoFNiwBCLkLb3w", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | f in Trash implies always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "SuyoibmvnPLHW5ZZ4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:02:30"} {"_id": "zcbi4XaL7KLwmaLxr", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "D43knC8fakMtBqKA4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:52:18"} {"_id": "ywBcSd7vLhuWTt7ZR", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | eventually f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XeXKoQ3nY2ozkQfQ6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:13:11"} {"_id": "yRworpgXpcizd7hdw", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\teventually (some f:File | f in Trash) \n\talways f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "X6QsYgvdbc4P4754C", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:14:40"} {"_id": "vM8kqwGccBmwYMfrv", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AfrTrQ7BGBEWMxRFH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 15:59:05"} {"_id": "EQWiY4NBDKBuZyJS7", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually ( some f:File | f' in Trash)\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "h5m8PiqqCpKJ83R24", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:21:18"} {"_id": "5NLzgQYXu8CGZsPMu", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n all f:File | always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yCF2fie9XFFitiHMA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:18"} {"_id": "QsmPNwGNrNQvjXRqs", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome File\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5XbNYMgfk8DjXP3Ni", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:03:28"} {"_id": "rmDAu2F2Z73terrMD", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fTfTShW3nagvh2z8M", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:46:02"} {"_id": "CDQHTey9YQGTWF84H", "cmd_i": 9, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\talways f:File | once f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash && f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ThmgTSfvyYJmtnac6", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:46:56"} {"_id": "AmpMtMsf8qiLqDfqs", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uNM3BWbrRcrHRBnmH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 21:43:32"} {"_id": "zWLEBYpsWubYd9xSZ", "cmd_i": 2, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File'\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7HGyBYkKePKnuXPmH", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-8 00:45:48"} {"_id": "CqnmMPZ2MSdL8wWCG", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t some File' in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MBLnJRevwLs242HvR", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:01:40"} {"_id": "JxRBojqfhLK3jqA7v", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f : File | eventually f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bF8hYD8mG4WDWaDXY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:44:52"} {"_id": "cBJKRNpTBKRmrY9bf", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f in Trash and File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "p7qDZ3HcXxiAHw7Rx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:56:08"} {"_id": "Bd6eDqEnGfEjQ3saR", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash && f in Trash until \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "Qxxhpz4a8PPT6cxAB", "msg": "There are 36 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-2 13:24:42"} {"_id": "sEueu5XPxPX974Rai", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9xbDTtLAkg9CuPicG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:28:45"} {"_id": "tqww6nYCZhhWtmaAb", "cmd_i": 14, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | f after eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nsnqTmPucCkkbbuuh", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:34:59"} {"_id": "Dga4tJv8cA5TtRD9c", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:Trash | always f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gHsp3zTQh3xfBpaqt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:03"} {"_id": "DbZwyFhGFDropjonb", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | after some f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RYGegq2n4cQWsNZdy", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:23:23"} {"_id": "ja5Qj9xqCbriHafkS", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "87DM32y6RwznYibg8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-6 10:57:43"} {"_id": "ZWfXE7jqxog4wkPky", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f : Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f : File | f in Protected implies f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "csCrmZCcBPsyvATQa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:41:01"} {"_id": "fchorkFRcyukM46s5", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\tsome File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TPsxWmXSNEsc7wiyM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:56:10"} {"_id": "TPsxWmXSNEsc7wiyM", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\tsome File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dKR4bsFMdsgKbAYDZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:56:05"} {"_id": "xJ8Bp6Q3XsfxE6J8w", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Protected and f in Trash implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HvZo2AfbwjXzReybS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:58:19"} {"_id": "M3fRNrsWHiXGEHTBN", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways (all f : File | f in Protected releases f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "c5JRBQLeKP9oYTWzw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:44:11"} {"_id": "oHstcqYrZHnHdHbGL", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:Trash | eventually File \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "67yDkCKYtS3PrFiGE", "msg": "This expression failed to be typechecked line 42, column 17, filename=/tmp/alloy_heredoc10639179719180213800.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:52:05"} {"_id": "rLxn9boiB3JaCCGq5", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (Protected not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kBGE8rWggZjPLQBgL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:36"} {"_id": "rfQ3RJmKjDwYbPdwT", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "acYj6ktKSfhb2BTf4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:33"} {"_id": "hyPJWiY8ZDMEqA6ri", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways (some f: File | (eventually and always) f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ezsiDvnTMwwFgD74m", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:46:03"} {"_id": "TwkrW3ojtZrkAF8vg", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:Protected | always f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PYqaAx5d4ZM3HKnqX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:36:51"} {"_id": "sDqNoXw42BwS8eRBk", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \n always Protected & Protected' not in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bwskgC2ccKiRYj4qY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:16:32"} {"_id": "vJc42Za5zrvPD6smp", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until eventually p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "SZv7qrqx4kCef6jzk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:17:18"} {"_id": "LspevonRq6xsfYjBR", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash implies (f in Trash until f not in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "SX7QMPeEqX9eAmYAe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-2 13:25:27"} {"_id": "v8s8zHF23oXjYshoY", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in link implies f in trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ru23KMW6KGfC5ompq", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File}\nRight type = {this/File->this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:20:12"} {"_id": "ED2EwX68B4nwdmTGb", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MG6QseTWPbBEMvnac", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:15:58"} {"_id": "yBMqPquSFFc8aPcxu", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some File not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iBLBzEQmsxwitqS8n", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:00:33"} {"_id": "FXP8LexHf3jSuHJmz", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nCNY9bme3qjqxSvGh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:44:38"} {"_id": "HruoCi8sNAkdzZHoD", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "L4wqWr8nEgYEaifyL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:05:22"} {"_id": "t76JkQqE5WkNg5bMS", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash after always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zr4WGmA8rZY89KpFs", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:02:37"} {"_id": "zHW9bqX7fxzJkhPHy", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File \n \tFile' = some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dbXaBd8dCcPpg7TAE", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:48:42"} {"_id": "vFqqfxh6e3huwaa8E", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "x8eauYSyoxcWok2k6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 18:46:51"} {"_id": "kJ8JRptcLyXTnfFA5", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QDmD99X6o5yQJBpH8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:36:43"} {"_id": "BJoQ8c3gShEEFB4v2", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f.link in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yPXQm7nZXTjoirQrF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:35:34"} {"_id": "5sffaKwoN4J7qJFgq", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jpja8wNWrgpnPiXvj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:17:14"} {"_id": "uETXapM3yhKN7hfKp", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways some f : File | eventually f in Trash implies f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xyhjLJP53N4n6DhJn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:17:54"} {"_id": "bqjsxWAX8RSSmRT3M", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LEBbu7ZyFqDvfaTTz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:01:05"} {"_id": "njA2gKaQsDK6gE2qW", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : File | f in Protected implies once f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "szabirgcd6m4tQjzi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:05:37"} {"_id": "cKsBePAbfHbmn7qZh", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f : Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f : File | f in Protected implies after f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZWfXE7jqxog4wkPky", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:42:04"} {"_id": "6NFhqkYsmodLskQD4", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n all f:Protected | always f in Protected'\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GhRzA558xdbEjPkst", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:41:14"} {"_id": "CmPkgowou662rr4RM", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "YeW6xEuCw8guhDzW6", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 353.16668701171875, "y": 159.2}, "File1": {"x": 470.888916015625, "y": 79.6}, "File2": {"x": 353.16668701171875, "y": 318.4}, "RejectedByOracle": {"x": 235.4444580078125, "y": 79.6}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2020-1-8 21:56:38"} {"_id": "HtbiC6ThhJSZgQB4s", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | (f in Trash and Protected) implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LGCzHbCd8fQJ6adPf", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 19:37:27"} {"_id": "qKqtSCNN9Ea45MArz", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f not in Protected since f in Trash\n}", "derivationOf": "k2ffMRLWGotQAmtZo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:43:39"} {"_id": "w6HvydWuBWAfojFW5", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : File | f in Trash implies after File = File - f)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "S9MmbzgJvMdEvTFEk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:37:45"} {"_id": "FLSEcBqrTDauBNhbn", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome File eventually in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iF5doTNKWPxTxob6S", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:53:17"} {"_id": "fB5KooaFARNNdDaF8", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tLink in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3kvgEeTi8fjQ2ndc3", "msg": "The name \"Link\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:03:01"} {"_id": "84jkW97tPLfnXkZso", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome eventually Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TTyCF87DAJ9bXkaEH", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:47:47"} {"_id": "hL3tr7ztGTYJPBBzE", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZbRWCJWp3yS6otr7p", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:23:32"} {"_id": "tQmC5t4GN7S9MbQzX", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tTrash and Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "T8RuDzWhr4wPGKo9t", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:43:36"} {"_id": "JSWwpWHCnvBZAwQt9", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually some f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4NSBmx4Rafe9AeHfM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:20:59"} {"_id": "DBc3NJR28mcCJTiYq", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Protected and f in Trash implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p:Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p:Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AGx5GwqXg5xGf9rf5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 01:02:47"} {"_id": "HvZo2AfbwjXzReybS", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WnvMoLtHeKBAowFST", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:56:53"} {"_id": "MeYBkD5WuFCEBwonb", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1.link = f2 implies f2 & Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "49D484G8tScgmd8in", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:34:48"} {"_id": "hshLuxhpwufY4bWSd", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways (all f : Protected | f not in Protected' implies f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "M3fRNrsWHiXGEHTBN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:44:54"} {"_id": "deNNXi49a6FhAtmc4", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "X2FpNyDWa5erCecof", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:35:04"} {"_id": "oy8JmkDMcihj2Z3Ae", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n\tall f:Protected | always f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "k5zchhFTS9qnTAcyk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 21:52:57"} {"_id": "sonwyFZWd4d5Lszvz", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File'= File - Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kXBF3YeytfmtD9PyP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:57:20"} {"_id": "X8wgBm8EmY8HAmzy9", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ECPiXaeXBxneX46sZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 21:01:46"} {"_id": "v4HZDPDjwETHBZ4xT", "cmd_i": 2, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File'\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome File eventually in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zWLEBYpsWubYd9xSZ", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-8 00:46:15"} {"_id": "eXHX9Ak3fvx8wFB6Z", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MgorTrpxPWPWfs9Ka", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:08:58"} {"_id": "vkXAvQLuRKRA2mfhs", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \tsome f:File | f in Trash since f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "e9vXmvKRP8ErqCQaB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:35:07"} {"_id": "pSSippcxtpBrZbHi3", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways some f:File | (not (always f in Trash)) releases (f in Trash and after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SyWjqE9P9yYdrRnty", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:07:01"} {"_id": "RGtG74SB8idByL8mJ", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (File' in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HAKsJPTPXRKii7Q2n", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:56:14"} {"_id": "X99RuKqgzRS6JsJBp", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f, g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \tall f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fikv7uDEZE9i6irwo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:42:46"} {"_id": "gNRtijYdPuTNSHrHW", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n historically Protected = Protected\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "voPyG7uXQbfiDxnPk", "msg": "== is redundant, because the left and right expressions always have the same value.\nLeft type = {this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:35:01"} {"_id": "H6Pfw4orpA7KBsHSF", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (File<:link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tCzrXqKeRbXFWvdq6", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:05:41"} {"_id": "waXXhgPZ4CYhAqtue", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dKEZmi6fLwigwSqCu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:50:18"} {"_id": "fmeqCuNhQvptMQZdX", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BeZtp5eLGcpk8P6Wj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:44:43"} {"_id": "3TpCXm7eCQAsLYFTq", "cmd_i": 12, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tf:File in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FyiTpjoMfMLwYh9FD", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:00:04"} {"_id": "beoBFSvwvzmu4GL5S", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vdLtt2kLTubMjFcmm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:52:16"} {"_id": "WcamfKgi8nZ3QGcBF", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\tsome f : File | after f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "C22vY687yi9fygqGs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:03"} {"_id": "PYtQM5SGrPQGZWuSK", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies always f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "T9CyzxdL5fQ3kc4w8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:25:27"} {"_id": "rQiHpZRTeqjuLPZ6K", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5ZNvaTddSLXNkdJHZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:52:19"} {"_id": "KbjJxLQjdepCyWyc2", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hkPmBZ2GJuK9yAWbk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:49:55"} {"_id": "TQwoGzPrzJSBJKvYY", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\teventually all p:Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yLQJq38ZeGvp8oRSF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:35:08"} {"_id": "udKSNFLKZQqd9gRZv", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p in Protected' until p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until eventually p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "caxmPqPD7oAL4AeBf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:15:40"} {"_id": "HrtDafvgo3kncvzLc", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TpkdCCBZw6GyzDJkN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:54:36"} {"_id": "eTZJN9AJuson2o4kc", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rQ4HPkQawLrfmqZJw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:36:13"} {"_id": "4ujAEHWuxoL6jY29f", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f : File | eventually some File - f \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ifNsEDW5DTKqYs9h6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:50:04"} {"_id": "Mm99CwJJJvbodrzRf", "cmd_i": 18, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Protected and f in Trash implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p:Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p:Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DBc3NJR28mcCJTiYq", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-8 01:03:47"} {"_id": "k6QtsJvLX2wheNNSW", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "EYohLGMsPgxTnoZ9R", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 21:55:16"} {"_id": "48ecLTsP7cQ4QW3w5", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f not in Protected since f in Trash \n}", "derivationOf": "HMgonMgq6ufEPWHjj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 19:19:53"} {"_id": "LwoG2GydxupuQWqde", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \teventually always all f:File | f in Trash implies always f in Trash' \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7X2Xf9szSKcpPz6mQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:14:26"} {"_id": "gHsp3zTQh3xfBpaqt", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Pv5GEs9j3hfZ2zEJw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:42"} {"_id": "smjnYWF7vpvCCShG5", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FXi5QPu6sjsfFxyNB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:51:17"} {"_id": "tPAe8mqGBLuHgAqDd", "cmd_i": 9, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tno Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "GXLBoeifY6SWBKKZE", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:54:39"} {"_id": "truQ3FphKdZ3a7fHE", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n eventually some f:File | f not in File' | always f not in File'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BjYi8Wi3xBi2pvPAR", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:12:11"} {"_id": "Ts39Xcr3545MDQQHT", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\teventually always some f:File| f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YSpMccYBvWo9uAGo5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:39"} {"_id": "Ckskj2dzS4tDYKpap", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:44:31"} {"_id": "j8eBHktt5ZbF8Bizo", "cmd_i": 2, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QYr2vmXsirrMKbT7k", "msg": "This expression failed to be typechecked line 34, column 2, filename=/tmp/alloy_heredoc4204631862399723395.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:55:00"} {"_id": "uFWLKB5GnghZdC7YE", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsince some f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XJjQk3c2QJj7BHjxK", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-11 22:27:50"} {"_id": "ybAk2MjKGwJzJ9ZYL", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n\talways (\n \tall f : File | f in Protected and f not in Protected' implies f in Trash' \n\t)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rpKs8EuHfzHiQXae5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-3 11:44:39"} {"_id": "G2tTwj6aLkSiNaBQ2", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (eventually link.File in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "REgy9F8Sis39ojxeY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 12:21:30"} {"_id": "kScqSb224cKjmi7vN", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n \teventually all f:File | f in Trash implies f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XSLWndYgpaqxKFSi7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:20:32"} {"_id": "P9bdxK3yoDg4gXAjH", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (File' in File and File != File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RGtG74SB8idByL8mJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:56:49"} {"_id": "gYkEABYhtmgpWyiYE", "cmd_i": 15, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (historically Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "upLcbQb65CjANu3Yc", "msg": "This expression failed to be typechecked line 96, column 10, filename=/tmp/alloy_heredoc11097255348213931101.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:37:22"} {"_id": "3Jp9goR4zPyvgfqb5", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways some f : File | eventually f in Trash implies f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nqaCbSpa7safdcCfp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:16:01"} {"_id": "ixHG3iTs9iyyc4dE5", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f:File, some g:File | some f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "S8fNbPB6tXagEr9Tz", "msg": "There are 8 possible tokens that can appear here:\nNAME disj exh part private seq this var", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:37:44"} {"_id": "csn9GWeA8KAXqdD8q", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tall f:File|eventually f after f in Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash implies always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fgRmDHnsNhgdzNwN4", "msg": "This expression failed to be typechecked line 41, column 13, filename=/tmp/alloy_heredoc320498527985711090.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:01:04"} {"_id": "h5kzknfqSf2izyGoH", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File|f in Trash implies always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gtNut7EQKjmts5ShB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:58:11"} {"_id": "Sf4uc8gXRxwtv6pZ2", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n always some f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "m5EEeqsAy26aEubEi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:19:42"} {"_id": "X6QsYgvdbc4P4754C", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\teventually some f:File | f in Trash, always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JsR9gbeqD5oKQk7xy", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:14:22"} {"_id": "9HprhBDHq5TX9Axd6", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some File\n \tafter some no File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kBPmxK5c8qJqb7Qy6", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:01:22"} {"_id": "qJZPYncmTc4MNJZMc", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually after f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zMAihenxHt4L2bnK2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:25:51"} {"_id": "hpvrkXMbXX7yykPz4", "cmd_i": 16, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | f in Protected f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XqBgJMNnfMcYWEYna", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:40:34"} {"_id": "7xQBdrNTWtqoKZP5t", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (some x,y : File | x->y in link implies x in Trash and y in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bgGKGr4T6fmFCevGD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:09:51"} {"_id": "cNswoCouRFMDjHCBo", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "94CTMXt8222jGfena", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:50:18"} {"_id": "wqf5AT5QSAmSiSEDT", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually ( some f:File | Trash | f' in Trash')\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9F5LkWRH8RgbKEsmP", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:18:29"} {"_id": "PrLLKcxdnFPShQZFu", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all not (File & Protected)\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nyN4D6SYoAJsGKZPP", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:41:46"} {"_id": "Ntm7ACaPc9KHx7DmB", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f : File | eventually File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aNLrxRRbwkbWDD7Z2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:48:52"} {"_id": "ZWo3CMoJv6e6GEyK3", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (after ((File - Protected) in Protected))\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kqcBYFQDTT32oAMbK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:55"} {"_id": "WEtabbFXd2RkdsBWc", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually no (File && File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QSe74r7is3KwdXz6Y", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:07:37"} {"_id": "hL799QiGo4ckcggq6", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "YeW6xEuCw8guhDzW6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-29 17:52:35"} {"_id": "MbNtxsHknDPd3Mpc3", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ESSnn82eDaKJk2bnp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:23:49"} {"_id": "tNYhx8TtDTaNtZEoM", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | always f in Trash implies once f in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "n9CSNzjCodCM4T4BT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:27:15"} {"_id": "SuyoibmvnPLHW5ZZ4", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways (some f : File | f in Trash implies always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "Xg2SPmPnxmp6SvK7m", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:58:03"} {"_id": "s9x7JSsXu7ygh922j", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hydaJe8WhYuDc7647", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:04:23"} {"_id": "Sai5yddEch6sXbkdX", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\teventually some t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vyw2XopD7vcJcnc7f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:37"} {"_id": "QjXvH7ZtS5iCAks4E", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome Trash eventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TWSh3MJjR9s43Qome", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:55:06"} {"_id": "MJiNYRindLWCeHvY4", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PcQkbomronrFnEk6q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:04:23"} {"_id": "wYHvGzAaYzfxSKtNK", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1.link = f2 implies eventually f2 in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Y23a78xoJv8qsDowR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-8 00:51:32"} {"_id": "wLT9AsksRQcodJF37", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tSBPdw74QgdFoNNwR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 16:02:29"} {"_id": "GAFXr9NPRpEvWCWot", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (some f : link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "L2WaadjfyEv7qsAt4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:24:11"} {"_id": "Wrws9zgjHHXMCCu3m", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all f:Trash| f in Trash') \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash')\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xZPYt8FCvXCWA7pz6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:28"} {"_id": "9pLKmNZC4etcMkeyd", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always no Protected & Protected' & Trash'\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EWG8tB6RhhPPxi33M", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:33"} {"_id": "S8fNbPB6tXagEr9Tz", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f:File, some g:File | some f->g in link implies eventually f in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WqQ4vxJgvz2TbedhP", "msg": "There are 8 possible tokens that can appear here:\nNAME disj exh part private seq this var", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:37:16"} {"_id": "fCTNLH3Fj6383ApW6", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \teventually all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Dga4tJv8cA5TtRD9c", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:29"} {"_id": "WrHDK3Pjr7YKQkzf2", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f: Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "DozGu58fQ7WwSwM9r", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:47:13"} {"_id": "4hmgr56t2cdKcLDp5", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually some a,b:File | a->b in link a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "X2hLCQ6ArWwq6B2rZ", "msg": "The name \"a\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:23:25"} {"_id": "pnHrHQXPSuBD5JKkh", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies always f in Trash\n \t\n}\n\n// some file will be protected\npred prop7 {\n\talways some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "78YPheH3L4wzqcdur", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:18:08"} {"_id": "TQsbrG4MtCsBsD4YL", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tFile'=some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "F6Wv4j42nz55ieZXS", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:50:47"} {"_id": "E4Yrac9EytL9PvjQM", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | some after f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "h7WQTTAeWDApaB4FH", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:26:35"} {"_id": "S2r8kPNRe9oAPGbMv", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8Kd93THv96QM5NaMK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:54:14"} {"_id": "ivT3E52d9aGJ67W6M", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wkh8SFhaHMSR4458Z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:38:40"} {"_id": "5kvEJgMCWQBdDdxBs", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "84jkW97tPLfnXkZso", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:47:59"} {"_id": "KmR5GZtkSyuNtoFXr", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (\n \t\n \tProtected in Protected' until Protected in Trash\n )\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fJKzvAvyrvAYjjBpH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-3 11:51:04"} {"_id": "pSpDAAP4uR4F59Hz5", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pB7zcArzAL296ErYu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:50:11"} {"_id": "ErcHQ2LffnCJ4nKvo", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fLwYzAA6siv5E798E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:50:09"} {"_id": "twFqjNG8vipXgcEXu", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "igWB34akhk5MEYstf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:20:11"} {"_id": "SQSNaepPLYxGywEvq", "cmd_i": 18, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all File in Protected until File in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2ehqLwYdJhd3giJWk", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:36:34"} {"_id": "2EmjChkP9KbdiLJsp", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually all f : File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "3JfEFSRJhFuTXx9E7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:39:20"} {"_id": "BJpvTipyZnnep6FwM", "cmd_i": 9, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "WMMFjmdM7tzqcL6QP", "msg": "This expression failed to be typechecked line 67, column 2, filename=/tmp/alloy_heredoc16716094353785181300.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:51:33"} {"_id": "rjCtYR6Qpu6AdRAZn", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FES87JgL2is3ogvsk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:27:11"} {"_id": "mwsXXQ5rBsQwFKXAP", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:48:17"} {"_id": "CEgntSWPpmpcNkxj3", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "azQbj8F4MhGF6heo7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 20:56:06"} {"_id": "zLfNd2hbFZXGav8AR", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno File in Trash\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:49:14"} {"_id": "LLQHqGYaE9p2ru7GS", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno Trash && some Trash'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RoDDMoLjpzMGmz4dW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:26:32"} {"_id": "EWr3eS7JpYe8dYAZ4", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "PA7hto4BkD5CPDr9c", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:11:04"} {"_id": "yhFc9eCu9cEeo4u5T", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always (some File)\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Nx3b7usZFBRmDSQG4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-9 08:48:03"} {"_id": "NqmELDfttjRCSxsEC", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Sj5z9tNC4ysJauSaw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:29:52"} {"_id": "kn7x3fNcZdNtDMFyL", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:file | eventually File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uWYagensDGZWSQCvm", "msg": "The name \"file\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:00:36"} {"_id": "sf7FTJphEwrJMkhwG", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SeqiRJMDbbScpoLJT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:36:04"} {"_id": "jxz3foXxTf7E8yf8M", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ro4QjwgsZMwCFz82c", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:35:27"} {"_id": "7724Bn98vArA8jCmv", "cmd_i": 14, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Protected and f in Trash implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways f:File | f eventually in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mvJdxuNoDn8m5n7Hj", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-8 00:59:12"} {"_id": "pPKgA5xWwz6FNE442", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected && Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PLJJw9fsM5TRMQiy6", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:41:19"} {"_id": "DZYyQChcaPDjzQAj5", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always some f : File | f not in Trash implies always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all t : Trash | t in Trash since t not in Protected\n}\n\n\n\n\n\n", "derivationOf": "xr97birXo2tKL3kj3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-20 12:07:08"} {"_id": "rWjvRZBER5MKFt6or", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File | eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qYkzwyTXRoJ3msF6J", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:47:10"} {"_id": "TcrPbLJRhH85SA3RP", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tall f:File | f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bm6b83yckqd2pafKA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:47:07"} {"_id": "bX5Qh5ZTpT9EE4KBz", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : Protected | f in Trash triggered f not in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZqF7JSFp3NzQxQDsT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 14:11:15"} {"_id": "4382PxLyMQKrLWbGh", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually always (some f : File | f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pPg5J6Lo5oNoPdwru", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:03:07"} {"_id": "DxEyQKAQZpWYg4HuP", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n \teventually all f:File | f in Trash implies f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\t\n \t\n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xJ6SY98p37arvMdoh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:27:01"} {"_id": "p24TQBq5u9PFiaWG8", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways some f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "jGA6DMHNyzYqZkGtW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 22:52:25"} {"_id": "c323cm2nDZXNKvmYc", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PYtQM5SGrPQGZWuSK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:27:08"} {"_id": "wv7jQgMMfCgo79TP3", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually File in Trash implies always File in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ga4Ls9o26RuzMxbj6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:42:16"} {"_id": "jpja8wNWrgpnPiXvj", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\tProtected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AMSWDevXZq2PdvdsR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:16:54"} {"_id": "QEtsLM2wmGAggiD6u", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AL42hF2jLKb2C4dDG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:46:26"} {"_id": "CG9cP7gFQdazQCpPi", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XBNRx4SMF3tZxSm4P", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:47:15"} {"_id": "RovM4Hou495xcdGSB", "cmd_i": 12, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tallways all f:File | f in Trash implies once not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3uamAes4ZJN87sZ3b", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:38:29"} {"_id": "waLACsfTcvTPpZyED", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jPzQLM8Ygca985bd7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:30:10"} {"_id": "SRBNhBveZmJ45QuHq", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:Trash | always f in Trash\n \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | one f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall f:Protected | always f not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "toDv6FRfGb4hYgQrh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:40"} {"_id": "jJi5NjmLWdbD3yp6n", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | always f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "89cbFivxbAddzzs8A", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:49:55"} {"_id": "Af5JJu77fAMFkG6Aa", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TwkrW3ojtZrkAF8vg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:39:45"} {"_id": "j5Lojkz3oeAwL9KCb", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (Protected' = Protected - (Protected & Trash))\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WZStvhb3sf2nwnbnF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:30:53"} {"_id": "ChC7rkkyxtJq57P3b", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f : File | eventually f in Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GzJcESMa38PFCXesy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:08:29"} {"_id": "MG6QseTWPbBEMvnac", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sY954z4LCTQwtYBns", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:15:53"} {"_id": "47P42hxNm6CZFtaov", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall f : Protected | f in Trash implies historically f in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zeWWzGskAsEi9C82Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:14:14"} {"_id": "Cj5Qs4SEYZ23AbftE", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n}\tno Trash+Protected\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tnext some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZXAAX8tm5Cow4rzCx", "msg": "There are 5 possible tokens that can appear here:\nenum fun let open pred", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:52:57"} {"_id": "ZbRWCJWp3yS6otr7p", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZKHkps8acWyABfyJt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:36"} {"_id": "rBzzeza7rEDD52hjx", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KgjDaFyoRvYFKT7Ef", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 21:40:22"} {"_id": "jYppRZeXAAzwTpW2H", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies always f in Protected\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zP4YxfTijqHd9YycN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:42:03"} {"_id": "Wa4Cbny2EED4JnnnK", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n some f:File | eventually f in Trash'\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TdPX8phHwXD5MtdZ9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:09"} {"_id": "oMiafor574rMN83aJ", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n\tsome f:File | eventually f in Trash'\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jT74z3Qzt8MyrB5Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:12:13"} {"_id": "DwhgBmvqExNLHJAku", "cmd_i": 14, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | (f in Trash and f in Protected) implies (f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually f:File | f not in Trash after f in Trash'\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "n6tRfqdPSEXjQjCgi", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:52:26"} {"_id": "gERX6QizjaKwqZMCJ", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all f:Trash| f in Trash') \n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n \t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tafter File in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WkMcwiBXEYyhnkWB3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:25:36"} {"_id": "cRBBJFx6jREpNF4vN", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\talways all f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "7RwC7WiqC9BWgPkET", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:55:12"} {"_id": "ZQhqM6MYPeamGmo2s", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually( File' in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dyMpqnB9Rg629BzZa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:05:36"} {"_id": "zhTQGqfsMvxtx3C4Y", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f : File | eventually f in Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "q9GrZobDpHttamnAv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:47:14"} {"_id": "EWG8tB6RhhPPxi33M", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "T28dven8RARLP7yv4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:13:38"} {"_id": "uQ9GfX9LjBd6G2Zmc", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash implies always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "t76JkQqE5WkNg5bMS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:02:44"} {"_id": "n6tRfqdPSEXjQjCgi", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | (f in Trash and f in Protected) implies (f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually f:File | f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5CgTHZgtRFujui9eD", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:51:52"} {"_id": "gHKNfZq2yAkrBDxTE", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\talways all f:Trash | always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3dSJymYu92vNAgSSQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-29 17:32:13"} {"_id": "f4NhAP4kXLwz5NDLr", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\tsome f:File | eventually f in Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MbNtxsHknDPd3Mpc3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:24:09"} {"_id": "NjxK9raWaNr8YjYqd", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:File |eventually f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FFJQJnEEEKeBp6o8T", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:07:12"} {"_id": "xSqXsEjXCKxw7BBMY", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:Trash | always f in Trash\n \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | one f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | always f not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SRBNhBveZmJ45QuHq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:49"} {"_id": "FKo8Zd8NXkQ7vDA5T", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always (some File)\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JSr6p7DSFcf3Ycumq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-9 08:44:15"} {"_id": "4rHs2AmEG6N4fYeqX", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n after all f : File | once f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LxQrAxfnkjmYte9Yq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:00:08"} {"_id": "CJTwJFXDnZnXyyS2G", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways some f:File | f in Trash after f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cQcDrwqPdMEeQz2BX", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:13:08"} {"_id": "nv8Qbu5DCast97byo", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (\n \tall f: link.File | eventually f in Trash \n )\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "o47ycp7SKFdiSLZnH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 18:59:39"} {"_id": "jGA6DMHNyzYqZkGtW", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tsome f : File | always f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "uBMEX9FJi6StphQuz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 22:52:14"} {"_id": "9m3fkxPEDth5ZXjTb", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in link.f implies f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iie5jfpxcNG2hzzWJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:30:54"} {"_id": "H9hdkzFnqiB2GWjYj", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (\n \tall f: link.File | eventually f in Trash \n )\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (\n \tall f: File | f not in Protected implies f in Protected'\n )\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fHQiNMJvmAKG3zsdQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 19:03:48"} {"_id": "xCLiGAE7ntTB9N78J", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CWJpZDsJppnKeABjj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 21:35:52"} {"_id": "HKhBqigh6jRzFwdQB", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "he4ae5rnZ9FxijMhh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:35:51"} {"_id": "pqDfjntRuvfHHx5Ba", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f: File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (some f:File | f in Trash implies f in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "t28JH3vNGRjpihgcQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:12:41"} {"_id": "NDqxPR6NDQrRDhFtf", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f : File | eventually File' = File - f \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xrBGwePuyxSkq7qQ2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:51:25"} {"_id": "whJKWtjtw2wNQNLiD", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies (eventually f.link in Trash))\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8MecAmBgbcPppK4PD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:02:29"} {"_id": "XqBgJMNnfMcYWEYna", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : File | f in Trash implies after File = File - f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | f in Trash triggered f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GmvcowiJqT9oyZLRu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:39:51"} {"_id": "wocyqpZjxmXB32w3B", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all f:Trash| f in Trash') \n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash')\n \t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5TiY3wHZs8xKPEfkb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:34"} {"_id": "jsa5g8N5BbZNWBSRN", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\tsome File & Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "jyqjLhaF6d75KTGEo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:13:21"} {"_id": "uAbv6NjqC6CJX28Cx", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : Trash | f in Trash since f not in Protected \n}", "derivationOf": "PTmetW7PE3PBMCpTH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 19:28:49"} {"_id": "hZZemgEWvg8pmZnqA", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "GQvEG2DaAAH2SzyMC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 16:14:06"} {"_id": "Yiz8Mn9JAjykLRNZk", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always (all f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "HiicZtw79mSjjZ5Aa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 14:43:14"} {"_id": "voPyG7uXQbfiDxnPk", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always eventually File in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TEwNuywcWmrDsHyPp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:34:10"} {"_id": "yHJxrtzkeMBBrAv5Q", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pYKdDNhrKvSn7Copo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:10:18"} {"_id": "prtiMSYwgSfdyWs9K", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f,g:File | f->g in link implies eventually f->g in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BJoQ8c3gShEEFB4v2", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:36:20"} {"_id": "uiY7mXWA5fBvhHLES", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n \n \tTrash' = Trash\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rjZBB22au4p7u2R2A", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-2 18:38:39"} {"_id": "pbBfBmE6GKvGD9hBS", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies always f in Protected\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jYppRZeXAAzwTpW2H", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:42:06"} {"_id": "Pfv5F2YNCf9LyWyri", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f : Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f : Protected | after f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FDLBafZ5Ef2P9fucs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:36:46"} {"_id": "xDp77aXibiM3u9ddq", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f: File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\teventually (some f : Trash | always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pqDfjntRuvfHHx5Ba", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:11"} {"_id": "CZJvTtR5CJGejS558", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vDqysqtchuYGqGpTk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 17:18:47"} {"_id": "baCPqki3rCxtALybc", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f in Trash and File' = File - f and Trash' = Trash - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cBJKRNpTBKRmrY9bf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:56:35"} {"_id": "6kgs78upr5uFEsRwT", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f in Trash and f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n\talways all f:File | f in Trash implies f not in File' \n \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \n \talways all f:File | f in Trash implies f not in Protected'\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZJW7w7mkFfHzSnhxQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 20:54:10"} {"_id": "kup9Czn2eR23koXsE", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:45:35"} {"_id": "ufcBFCNKq7G26RKSj", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "MNegade3hLiutxCru", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 17:06:28"} {"_id": "GMnGMweSRacek5ZNr", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected )\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AWcskxN8dqrFNHrfq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:32:50"} {"_id": "KM9jNZWwMywpGYES7", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all f:Trash| f in Trash') \n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \tProtected in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BnX3ritfpFQNpuyed", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:12"} {"_id": "gYL8kTYmYwsWxDR7o", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iPvfX33ZnDhtWS6oA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:48:57"} {"_id": "FjGvwm9Z3Ee3najJQ", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (\n \tall p: Protected | p in Protected until p in Trash\n )\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (\n \tall f: Trash | f in Trash since f not in Protected\n )\n}", "derivationOf": "Nd9aaTsdTjJAzqyFm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-3 11:57:35"} {"_id": "Ap78f67baGYdpZ48L", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "n6Twqrmra4T9QAXxt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 21:53:04"} {"_id": "cf2jBRDy2NqwxXdQZ", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome Trash and eventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tsome Trash and always Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vkr36qJEdjwXW4nx6", "msg": "This expression failed to be typechecked line 46, column 19, filename=/tmp/alloy_heredoc7243212592015064195.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:57:44"} {"_id": "dPN4qDCqJEEFcMujA", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "C9pbWsWdabtQT47ND", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 800, "y": 99.5}, "File1": {"x": 600, "y": 298.5}, "File2": {"x": 600, "y": 199}, "RejectedByOracle": {"x": 400, "y": 99.5}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-10-31 11:52:53"} {"_id": "QQSRC7mwa3A5fxisS", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some link.f implies eventually link.f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bAPL8vujSi3o7pebs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:08:05"} {"_id": "H9RAPuMzgjvjmN7qP", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways eventually some f : File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "Y9ZsiHW2NM8o27CL9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:40:37"} {"_id": "JLbW2qfucNnYGmaDQ", "cmd_i": 15, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t (historically Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sEi5xRCC4ZXpBgyHk", "msg": "This expression failed to be typechecked line 96, column 4, filename=/tmp/alloy_heredoc8637004032834113452.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:37:38"} {"_id": "rDEWKiqgrkQAHoQWi", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "G7ssdcoaMRTHYy5Ex", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:44:16"} {"_id": "ShDnLvErZMEFfBXiA", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ryuhmSf2aw7ya3oXs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:22:40"} {"_id": "PL8mqTLMYigpTLWGZ", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways some f : File | always f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vvY5jLXTr5fa2fk5z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:29:00"} {"_id": "MEEXJkmjuzHr66r2w", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually no File \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash after f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NmxKjAKbgWPbMxZPk", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:04:49"} {"_id": "6QQAae5K7Gb7AJJjS", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome Trash and eventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:Trash | f \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hG9BXW4kmRfFcXu5v", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:56"} {"_id": "nYejJthEAf4yssuC6", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:File | eventually File' = File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qLSEpEELoHgRJroj5", "msg": "This variable is unused.", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:01:35"} {"_id": "PB6cGnR6gpc9bGeZJ", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually ( some f:File | f' in Trash')\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qcYo2BZ2gujSSQvXp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:27:33"} {"_id": "LJ8ypqphcacek58rb", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (some f : File | some f.link implies f in Trash))\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9iEeYSYbCzqASuuFS", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:11:36"} {"_id": "BqJq3W2mWPdYX7ejh", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pprwoeWKE6b5Jnsrf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:00:14"} {"_id": "heq9vFRwykmRASCwQ", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all l:link | l in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8azgmu8FWZ3r5nQmY", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:17:55"} {"_id": "rMWJxSoeWtsBuGvWE", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2uqqp8sKxx2qnapLT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:38"} {"_id": "q2nWGdxwMtHJFychk", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "tPmrgGwQt6cbebJw9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 20:20:03"} {"_id": "hEWd5n24fEkr9RtSx", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all f:Trash| f in Trash') \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash')\n}\n\n// the protected status never changes\npred prop10 {\n\talways (all f:Protected | f in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Wrws9zgjHHXMCCu3m", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:17:00"} {"_id": "d33WbQtgm9GKtNPTS", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iHb9tZK6TCFwTd4ts", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:38:03"} {"_id": "azQbj8F4MhGF6heo7", "cmd_i": 14, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | (f in Trash and f in Protected) implies (f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually f:File | f not in Trash after f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DwhgBmvqExNLHJAku", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:52:48"} {"_id": "TdPX8phHwXD5MtdZ9", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n\tsome f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "oMiafor574rMN83aJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:12:50"} {"_id": "L9dcZxegPr7oAvjLz", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (\n \tall p: Protected | p in Protected until p in Trash\n )\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (\n \tall f: Trash | f in Trash since f not in Protected\n )\n}", "derivationOf": "hkHzYCuKGompQE372", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-3 11:56:38"} {"_id": "fEFWjHMDXyJXJaGzS", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f in Trash and f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n\talways all f:File | f in Trash implies f not in File' \n \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \n \talways all f:File | f in Trash implies f not in Protected'\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8x4Shj67PijTgxgsn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 20:53:25"} {"_id": "PoAqndbJuN9Quqt3z", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some f:File | f in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\talways (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\talways some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iyLCJB6zbFeCxG8Av", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:31:46"} {"_id": "95B2JdMEtdyb44wYH", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZtxuD4Fgc37GsJDpG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:16:36"} {"_id": "A5bAY7qSJhijuucpo", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "TfLHJRLYbRYHMBfFK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 20:20:46"} {"_id": "ThmgTSfvyYJmtnac6", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\tonce File in Protected implies always File in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash && f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "APXk6QJ8r7taDnx35", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:46:39"} {"_id": "PN4C6MxiQgJCo7RnN", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tnot trash and no protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "msg": "The name \"trash\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:48:36"} {"_id": "bZwLTBmrDEC4Qniij", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\teventually all f : Protected | f in Trash until f not in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2LkrG2yfCJX3gS3Gp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:10:36"} {"_id": "aNLrxRRbwkbWDD7Z2", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f : Trash | eventually File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AKQL6cebx6GxPTqFj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:48:13"} {"_id": "TWSh3MJjR9s43Qome", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some Deleted\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5ioNctDr8ugjowgH2", "msg": "The name \"Deleted\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:53:55"} {"_id": "WkfxoZDDEuk9dpmYu", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (always some f:File | f not in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ofFkEnCR3qA8zNx7G", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:08:56"} {"_id": "F3gF7GQyte7spP3wa", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\teventually all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rjCtYR6Qpu6AdRAZn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:28:42"} {"_id": "gNDGkf2qSXzGanth2", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LGBoxX6esLX42A4b3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:16:41"} {"_id": "Z27W4h3ABGf6G3y2f", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\tsome f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "L3nQrfm4qjoLmLDEb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:11:14"} {"_id": "NLHyjuvkJAL8pmxhL", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f : File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "2EmjChkP9KbdiLJsp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:39:25"} {"_id": "apmvtF9ZrPZv9DSFa", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tall f:File' | f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WK9Qo2oGbrWDosq6t", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:42:07"} {"_id": "dtbTKLjX4D9aLQes7", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n\talways no Protected & Trash\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "iRFNkQbEek4ALv3Ph", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:53:14"} {"_id": "uCuNKLPLF9cq8ZC5z", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in Trash\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6GWvFmLpHjBBCR6Qd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:42:40"} {"_id": "GhRzA558xdbEjPkst", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n all f:Protected | always f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SEixMcgb4qPkAtz8w", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:40:25"} {"_id": "SenDLvbNkYKyD9vRc", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \tsome f:File | f in Trash since f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xncvdw9oaGCbnTZBv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:31:00"} {"_id": "JgxgNtJefcL5yNZdZ", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FboruZSTDYSoc7ubJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:59:17"} {"_id": "k2ffMRLWGotQAmtZo", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash since f not in Protected \n}", "derivationOf": "X7rHTL92jbHxfvEPX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 18:43:06"} {"_id": "DgYNpb6x7Jdx6Rw2t", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zYQSqarrz45HetZqP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:51:08"} {"_id": "vsZGB5N5EsYh2GPYh", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all t : Trash | t in Trash since t not in Protected\n}\n\n\n\n\n\n", "derivationOf": "2KQLgJXbTcgaaryzF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:20:10"} {"_id": "uoxHiDp6qpqActCAC", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HcvsFQdBvPvRF8zK6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:32:39"} {"_id": "FDLBafZ5Ef2P9fucs", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f : Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f : Protected | f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "R7Dt4kJSAY7xSq2ob", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:36:27"} {"_id": "Dn7oWioMHDT25xNeD", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash && historically f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wshhAyXrnsXcAJB3n", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:44:59"} {"_id": "bfwb87bJFMD2WYLG3", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "knHsdHq9jGqKNAxNn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:53:27"} {"_id": "yYAtSAgvGkmZBASgy", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tsome File after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8oQoeRfsJfM3RJeak", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:28:56"} {"_id": "Ljx6TqkijRprpQTuD", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8FmQ9PNWT2SXncTxX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 21:54:49"} {"_id": "YSpMccYBvWo9uAGo5", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\teventually always some Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ftHM5sN33NTFRrY6N", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:09:17"} {"_id": "3rZNNFEPrFgQiK4Gh", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "AQnDpEBacwaFGk2r3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:46"} {"_id": "BLPvvYfxyaHNgPSpe", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f,f1: in File | f->f1 in link\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EENr2Pf4W9AbfYLTp", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:32:12"} {"_id": "L3nQrfm4qjoLmLDEb", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\talways all f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:11:02"} {"_id": "QFnrCBxCZ7icLWuC6", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KufgvuaM4RinEFWcP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:33:14"} {"_id": "e9vXmvKRP8ErqCQaB", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \tsome f:File | f in Trash since f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5Tj2bNEgdP2q5582v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 22:32:09"} {"_id": "REgy9F8Sis39ojxeY", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yRziBMZWtZKoCKEYD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:20:57"} {"_id": "8rCG3b5KtEHioq3Ek", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\talways all f:Trash | f always in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rHh8ph9Dqda3AT6ZL", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:18:07"} {"_id": "Kh6Fx7pArG6NjaEB8", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n f in File\n File' = File - f\n Trash' = Trash +f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "s5Z7GsJhcMy4h8TPc", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:01:19"} {"_id": "g8kDRhCC7RZTrrZs8", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in link.f implies link.f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9m3fkxPEDth5ZXjTb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:31:05"} {"_id": "TrQMdZpPRptgdTQoK", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cKu5tjFhYko5BEp6f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:31"} {"_id": "Bk6zyS4GmGBxziabr", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually some f : File | f not in Trash implies always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all t : Trash | t in Trash since t not in Protected\n}\n\n\n\n\n\n", "derivationOf": "DZYyQChcaPDjzQAj5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-20 12:07:13"} {"_id": "x7mivsc8DzBFGmXAY", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TzfWPiW37mfyd7j5X", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 17:40:49"} {"_id": "g3JdjguzZm2yFLKLW", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | File' = File - f)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LKBqJYah6GjRSDZfr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:57"} {"_id": "hydaJe8WhYuDc7647", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4382PxLyMQKrLWbGh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:03:19"} {"_id": "TpkdCCBZw6GyzDJkN", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tafter Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "55SGZFAGjYKJY8gzB", "msg": "This expression failed to be typechecked line 71, column 2, filename=/tmp/alloy_heredoc5644788895003133901.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:53:54"} {"_id": "7wrvB9ENNRyhaQ4dW", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tFile eventually in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2ZZSLrtiJrTwvydQz", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:52:34"} {"_id": "BgWPhTMN6QFL9t7Xm", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File next File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ewKoamLYFD3X8hxfG", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int->Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:00:39"} {"_id": "LAj3bKLMb8aaprYuR", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t eventually some f:File in Trash'\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "p3guyS5ZDEyeBqnpR", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:12:42"} {"_id": "QxzuNvMxDBYNeyHKc", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n \teventually all f:File | f in Trash implies f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies before f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kScqSb224cKjmi7vN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:25:49"} {"_id": "Y23a78xoJv8qsDowR", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MStvuym9eyQPD6ASJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:50:55"} {"_id": "bz8kyyNSSZLfdDsdN", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f,g:File | eventually f->g in link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9QzZgydoqvYb4eEcD", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:33:51"} {"_id": "msrLeDn3DpAvftT8n", "cmd_i": 9, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f, g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \talways all f:Protected | always f in Protected and always ~f not in Protected \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "c5vmXBGaGPGqKSWPR", "msg": "~ can be used only with a binary relation.\nInstead, its possible type(s) are:\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:45:34"} {"_id": "3JfEFSRJhFuTXx9E7", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually all f : File | f not in Trash implies f in Trash' \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "MifgTPgwE4b4Wmb4i", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:35:18"} {"_id": "enrorAbSBMegb8WwN", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tsome File releases no File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uRPv7DthKJ4nhJSB2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:44:37"} {"_id": "GKNY2tpo8CigXWxdB", "cmd_i": 9, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n all f:Protected implies always f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6NFhqkYsmodLskQD4", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:41:34"} {"_id": "WSWoNeWZPo6gp5XG6", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:Trash | eventually File \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jaGYEfQE55rKZq75g", "msg": "This expression failed to be typechecked line 42, column 17, filename=/tmp/alloy_heredoc10295551162876679302.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:52:35"} {"_id": "eq9Gktrid3GeCQbQi", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f,f1: in File | no Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BLPvvYfxyaHNgPSpe", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:32:24"} {"_id": "5LqjxcHWuYJXuCDa6", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually some f: Trash | always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f: Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "omEEb8T8fBL9ubEYC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:49:02"} {"_id": "crdejFY7JqAcKT9DF", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tall f : File | f in Trash and f in Protected implies f not in Protected \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "hevSJmnouTvmEbXtM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 22:53:52"} {"_id": "CxuXt6xsJsxqXqko3", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\tProtected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fdw8usza7C75rjjTy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:42:00"} {"_id": "zYQSqarrz45HetZqP", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Trash until f in Protected)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cNswoCouRFMDjHCBo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:50:48"} {"_id": "KuarZoJyGhqLTkWS7", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NQKWMEkBz5baB6qFP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 15:57:59"} {"_id": "6vw72bG6JCNhxeDcR", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (Protected in Trash implies Protected' not in Trash')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xk4jpRHNJ6vsBo4kT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 10:29:37"} {"_id": "Qxxhpz4a8PPT6cxAB", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\talways all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "bKX5s9pfrzrbb3qZv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-2 13:23:28"} {"_id": "49D484G8tScgmd8in", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1.link = f2 \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "u3QDCPry22LE49Ri3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:34:38"} {"_id": "bPHssAJi2KdSHDv2Z", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always some f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5G4cp3MXzSzbvjc8h", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:10:45"} {"_id": "NMmsfG4XX8tqEEvwe", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually File.link & Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "hDRk9T7dKBW28g5As", "msg": "This expression failed to be typechecked line 57, column 2, filename=/tmp/alloy_heredoc10896729249315500160.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:28:39"} {"_id": "JdKmNBzoabnfm4Zck", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all Protected not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Qxsje7W4orKbcDZ8q", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:37:37"} {"_id": "HCBY8qjyEbHGRLkzy", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zbNXRELL2v6LSKf9v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:49:44"} {"_id": "CM7uFrKxPxjtKJLbK", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f: File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ddnf7PDQ4T8wJSYvW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:16:53"} {"_id": "4qWmNsqff4znFQa5R", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6kJwfroQEhaFvk8Xz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:31:16"} {"_id": "r6ypjeG2YHWYpzg8C", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ygutz46C36WDfNveD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:21:00"} {"_id": "bAPL8vujSi3o7pebs", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually link.f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "odMphT6jQoTAttCma", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:07:54"} {"_id": "qhM4boWuXBCFLa7ib", "cmd_i": 9, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways all Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aGg7ka5PKiSPQZKAd", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:20:56"} {"_id": "TfBfLuDvpt2XjMrEN", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PrLLKcxdnFPShQZFu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:47:29"} {"_id": "7Bt7ybszYGd3wmSnX", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "r6dpW8EtDNLnad6FL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:55:04"} {"_id": "y9mfqBpzmNJ53w6Bn", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9GxamuCyKHJ2Zzi6Q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:59:59"} {"_id": "8fWj5PaqFo5rLbwZj", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:Trash | eventually File' = File-f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cNYA6qDCjGJvGbPAk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:55:01"} {"_id": "NaCvGiAFtLZf8JS3Y", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:21:28"} {"_id": "aRkzFMsXoXTZYr95A", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:File | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "a7P3c2g6RFr332DHG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 21:27:08"} {"_id": "xncvdw9oaGCbnTZBv", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \tsome f:File | f in Trash since f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nYMoRwHxKARt5ScqE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:30:50"} {"_id": "hgbpQbiHvyKrJQvCY", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "BL9CLcwtQpakdAsLc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 23:24:52"} {"_id": "yeox3rzZEni94rF7N", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tnext (some File)\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "epQ8SoffjZEs5HDxB", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int->Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:41"} {"_id": "HQbCKmYfWhWwAqsEn", "cmd_i": 9, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4TMQx2sCzydmeYTTj", "msg": "This expression failed to be typechecked line 66, column 2, filename=/tmp/alloy_heredoc9092775293870431549.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-8 00:54:18"} {"_id": "QLfxQAiijvatowQSP", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NJ8kPhn7A32ekGgTo", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:09:04"} {"_id": "xQhbKMoNqK5cfdLDm", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some empty\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vdvi9mdLriQMJETkR", "msg": "The name \"empty\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:49:46"} {"_id": "C22vY687yi9fygqGs", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\tsome f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PYpNaZmn5kciGChXT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:51"} {"_id": "uQuMmJEzt49Y4o95g", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File'\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "v4HZDPDjwETHBZ4xT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-8 00:46:31"} {"_id": "97a4WE8AoxRm4YWqL", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some File\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "47PbKEc24rHZCLn2s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:55:41"} {"_id": "PA7hto4BkD5CPDr9c", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | once f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "MeE3DFfqNyDGofdZC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:10:45"} {"_id": "Fjg4zJP658sMQodhp", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (Protected not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kZq4FviQ74Qp6A3Sb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:41:04"} {"_id": "KgjDaFyoRvYFKT7Ef", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wTM4KJcdAh9orqSQM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 21:39:52"} {"_id": "3ore9s4JXtnsnzqM3", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : Trash | f in Trash since f not in Protected \n}", "derivationOf": "uAbv6NjqC6CJX28Cx", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 381.4444173177083, "y": 199}, "RejectedByOracle": {"x": 190.72220865885419, "y": 199}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-11-1 19:28:56"} {"_id": "DNk2w7EsdQiQGAqpZ", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "bFjffW9XTBkrfxBQq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 16:52:10"} {"_id": "TzfWPiW37mfyd7j5X", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dNRJLqZ2XHpagPXhL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 17:40:35"} {"_id": "DzA4GB8DBWAQNTRyR", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually File.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "xCwKRhhwcSafdXQER", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:19:11"} {"_id": "pwh3Gm8qAyXroSsyL", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (always some f:File | f not in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hQ2Mh4MrBdHwLxaYr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-29 17:53:07"} {"_id": "PP9b2iBuf9YLnWH4r", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Sai5yddEch6sXbkdX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:15:10"} {"_id": "79ruNMCfqJGrwG3Qi", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n some f:File | f not in Trash implies eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5Xpm6QxzyMBSsNj8B", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:24:48"} {"_id": "8Wxdec2pHXM8yxg4i", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:09:31"} {"_id": "r6dpW8EtDNLnad6FL", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File in Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "c2RKogB8ur4D2mKK9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:54:44"} {"_id": "CcMt7AYPASmTL7FRv", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | f in Protected triggered f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always (all f : File | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ydxGxDhuh4yPqnWtT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:43:41"} {"_id": "ET8Xkfe7C6Ze2JL7b", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsince some f:File | f not in Trash implies f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zunhSHoSJYcNCon58", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-11 22:28:19"} {"_id": "wFYFXCnPpHcmnqffH", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n some f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Sf4uc8gXRxwtv6pZ2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:17"} {"_id": "7NDfNAte5497nsToh", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tFile in Trash implies always File in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-22 12:27:03"} {"_id": "QYr2vmXsirrMKbT7k", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "56tx48SY2BMhhmgNT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:54:25"} {"_id": "nm5DwwJtYk9RrdGT5", "cmd_i": 12, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once in trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "A4gTX7y6JKk8p9g97", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:25:56"} {"_id": "Ro3TYPd5p63Kvn2vd", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BqJq3W2mWPdYX7ejh", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:00:53"} {"_id": "tPmrgGwQt6cbebJw9", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "LHfYAHnTqGKMCsbu2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 20:19:50"} {"_id": "n5itEYXMXrJ5voMjP", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tall f:File | eventually (f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:File | f in Trash and always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xb2d7uWRMmj9XarDK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:01:19"} {"_id": "BBxQAPTPCf67YrLBK", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "KbjJxLQjdepCyWyc2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 23:06:52"} {"_id": "cBqRri8nZR6NoNwWb", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1,f2 : File | f1 -> f2 in link eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "L4rzz7DZGxysaXrmR", "msg": "The name \"f1\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:41:56"} {"_id": "eP3GJ7mZdS7LQYv3b", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (all f1,f2 : File | f1 -> f2 in link implies f1 in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "icXDpWFnkSg9s7pC7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:42:25"} {"_id": "ST3gjdSJpSmzsowir", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f: File| f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KjgWduvC6ozqXjvci", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:27:23"} {"_id": "5ioNctDr8ugjowgH2", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bfwb87bJFMD2WYLG3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:53:44"} {"_id": "Z3PpdBtzgzc2BsY8v", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rLxn9boiB3JaCCGq5", "msg": "This expression failed to be typechecked line 61, column 2, filename=/tmp/alloy_heredoc2616794685087514212.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:13:50"} {"_id": "a7hrKEBxZycbLcgtx", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually some f:File | f.link in Trash'\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qcXFmT9ngkaPqW9qX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:28:53"} {"_id": "pg9iQ6PPJ6AaAZJC4", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f1:File , f2:File | f1.link = f2 implies eventually f2 in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 11:32:48"} {"_id": "qzEsSEGRKt4yyzon8", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File after f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vsyD3njZXp7LYz2eh", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:04:45"} {"_id": "mFPY8XCBj8o2awxwt", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:43:56"} {"_id": "ZKHkps8acWyABfyJt", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4cs6GhABzzQcFKfEP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:12"} {"_id": "mFrYuWm22inTiMPgv", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Lo2cRva5QZGnDuiY8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:52:48"} {"_id": "X27W7EoiYrirNcgNb", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QYaxgZQ5ZhGNoLnJf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:18:51"} {"_id": "HZ3rYSwov2evKq3Bc", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\talways all f:Protected | always f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "ZjGpyws7okkNoBqwG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 11:35:48"} {"_id": "hv2mBh38o6s3WB6RC", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dsLixPArcFJR4gse2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:41:33"} {"_id": "jPzoJfNh2ZaAbyMmp", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZSvu8cJLxnj8DBPd8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:48:06"} {"_id": "8Txadrqd67aBb2qcb", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually (f not in Trash after f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SyNvjBuiQGNaiAfvu", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:01:13"} {"_id": "tEuRR5wpsARHc9zqv", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\teventually all f:File | f not in Protected after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MdqsZM8mDYsMvxzds", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 17:38:37"} {"_id": "SX7QMPeEqX9eAmYAe", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash && (f in Trash until f not in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "jwDPw44gCoLZjsYpo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-2 13:25:15"} {"_id": "gNjASxo6McsgwoNE9", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (always some f:File | f not in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jYCGBFwiC7Ba5M9Sk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:55:31"} {"_id": "qYkzwyTXRoJ3msF6J", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways (all f: File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5cpZPWQsRTTx7qfbv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:46:43"} {"_id": "5LwJjMijE7wgX2Ew2", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zfmqMyd2KvK5Qp7ro", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:29:59"} {"_id": "ZxTY9edHc9WGF5K6W", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "v5xWfDqyPwRkHQkde", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:09:10"} {"_id": "sGKuemM2e9jGk3Ypm", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno Files and \n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ypg8PkM55icjhMk2j", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:53:18"} {"_id": "ovsZPbyap3LKQWic2", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:37:03"} {"_id": "3T973Cziw6hzfJQcY", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eq9Gktrid3GeCQbQi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:32:29"} {"_id": "dNRJLqZ2XHpagPXhL", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\teventually all f:File | f not in Protected implies f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "y4ushMnhdF8crc88W", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 17:39:18"} {"_id": "aeMaqaA4cw4cyLn7x", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f in File\n Trash' = Trash + f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TkuC5aPQjMaD9wZDQ", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:02:08"} {"_id": "WbAqMbaDyoT2sx6tJ", "cmd_i": 16, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | since f in Trash implies f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "kodX2qXkRqTNuCNXC", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-11 23:29:38"} {"_id": "s5Z7GsJhcMy4h8TPc", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome File and eventually some Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hvwFTBHjbExJcdPee", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:59:20"} {"_id": "ofFkEnCR3qA8zNx7G", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always some f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MJiNYRindLWCeHvY4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:06:43"} {"_id": "axGqH2DkExeNKs27B", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | eventually f in Trash \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "38aWjvGCon5TxaBeC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:56:17"} {"_id": "pYKdDNhrKvSn7Copo", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some File\n \tafter no File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rTBPEgkhmmEdiFtq9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:04:16"} {"_id": "D43knC8fakMtBqKA4", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "smjnYWF7vpvCCShG5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:51:50"} {"_id": "k4nnKFjRqisTiEFRP", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some File in Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RNqLpNZZugTsGgkdu", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:56:48"} {"_id": "vDqysqtchuYGqGpTk", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qo8BJ25gcwjo43PLT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:18:28"} {"_id": "tqMDZ3pcQXu7XhY9w", "cmd_i": 15, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "szxFgJwhMaxWHDLYF", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:59:40"} {"_id": "nYMoRwHxKARt5ScqE", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ET8Xkfe7C6Ze2JL7b", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 22:30:00"} {"_id": "PYpNaZmn5kciGChXT", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5xB49rYiDPDoqerPH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:21:03"} {"_id": "dZ67sNvryjEbuC27v", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f:File | eventually Trash' = Trash + f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Q2JsutpsCSysmx2R5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:04:06"} {"_id": "JX65Qd4Y67N9gzTMq", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ivT3E52d9aGJ67W6M", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:39:31"} {"_id": "GmvcowiJqT9oyZLRu", "cmd_i": 17, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : File | f in Trash implies after File = File - f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | f in Trash triggered F in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Q5e4QPDJLYEF63Eo2", "msg": "The name \"F\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:39:46"} {"_id": "iByQj3K9agfKtPKf3", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "BJpvTipyZnnep6FwM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:51:55"} {"_id": "eAqbwgBBn8Svcxb2Q", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (\n \tsome f: File | f not in File'\n )\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "F9sn5MC8TPo8xMtgq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 18:41:46"} {"_id": "idAJeFyj4GpB3DPNj", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "s2fyoRGQiGPS4istZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:49:11"} {"_id": "SQ9E4sCGEtw26u5aB", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually all f : File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "M5scCMiShnzaL5F58", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:03:40"} {"_id": "LLMdEfouxDipxJL7x", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually no File \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall t:File | t in Trash after t in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MEEXJkmjuzHr66r2w", "msg": "The name \"t\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:05:02"} {"_id": "vpk7B27gkwScu37Bw", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Eb5QrpicB2CJyEZsw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:38:39"} {"_id": "hggfb3pu2zGX6NTAt", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f:Protected | eventually f in Trash implies f not in Protected\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TRYws93LPotdo6Tyt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:44:08"} {"_id": "tGntixtMijJnxwYtP", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (Protected not in Trash')\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Fjg4zJP658sMQodhp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:41:18"} {"_id": "itD2MGzaYPk2FzpBx", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways some f : File | eventually f in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uETXapM3yhKN7hfKp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:18:02"} {"_id": "csCrmZCcBPsyvATQa", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f : Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f : Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Pfv5F2YNCf9LyWyri", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:37:24"} {"_id": "GXLBoeifY6SWBKKZE", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n\talways (no Protected & Trash)\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "dtbTKLjX4D9aLQes7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:53:20"} {"_id": "abiy4kr84tdGuKJur", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n\talways all f:File | f in Trash implies f not in File' \n \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \n \talways all f:File | f in Trash implies f not in Protected'\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fFCBZjwHP6kut5sDQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 21:06:31"} {"_id": "N4fQiQxjbsgaT6v66", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) = Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "cRBBJFx6jREpNF4vN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:56:24"} {"_id": "NLsMoWd7fjkuHK9nZ", "cmd_i": 17, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways (all f : Protected | f not in Protected' implies f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | )\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YSR8XE6Rzsv8xv6Cq", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:48:13"} {"_id": "rgxHeXqzQ7vxpBA5r", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QjXvH7ZtS5iCAks4E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:56:13"} {"_id": "ff2eoxf9vNAg2zBMf", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Wp65XgLwyLp8wR6jx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-3 00:11:34"} {"_id": "WkMcwiBXEYyhnkWB3", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all f:Trash| f in Trash') \n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n \t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tafter File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wocyqpZjxmXB32w3B", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:25:22"} {"_id": "tQGrTvBDJoM2wW35j", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CxuXt6xsJsxqXqko3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:42:19"} {"_id": "P6vJmxESuSZGz3vqg", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually all f:File | f not in Trash implies f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "f7tqaM4yYhMtthbbG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:39:52"} {"_id": "Mvs6wMcLjoAWBKNpG", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and Protected implies f not in Protected'\n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TtxjZqhRvrdGLqm9k", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 19:34:51"} {"_id": "c7oPT7XTZnPECr45t", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g: File| f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9hDaj48rAFmn6tCYi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:30:02"} {"_id": "94CTMXt8222jGfena", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways (all f : Protected | f not in Protected' implies f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NLsMoWd7fjkuHK9nZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:48:20"} {"_id": "9iJJJS2Dx7yMf4LvZ", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (\n \tall f: link.File | eventually f in Trash \n )\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (\n \tsome f: Trash | always f in Trash\n )\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "y86LpqDDS6edbhJ6J", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-2 23:21:56"} {"_id": "4zDygwoYWF7AAqHv8", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (\n \tall p: Protected | p in Protected until p in Trash\n )\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (\n \tall f: Trash | f in Trash since f not in Protected\n )\n}", "derivationOf": "FjGvwm9Z3Ee3najJQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-3 11:57:39"} {"_id": "NQKWMEkBz5baB6qFP", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash or Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "47mgLzWR88pbRYvQg", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 15:57:42"} {"_id": "Xvf9BjRAsJjRKPMoN", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "YeW6xEuCw8guhDzW6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 19:27:12"} {"_id": "QsYpdaKTqNo3Kjh9h", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash after f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uQ9GfX9LjBd6G2Zmc", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:04:03"} {"_id": "wvvzeiBdP4ZQFJiNw", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (some x,y : File | x->y in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ro3TYPd5p63Kvn2vd", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:01:29"} {"_id": "R4LjemyeFhKD8Q5h5", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XMWgYAQTiB4LXkAtn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:11:28"} {"_id": "vsyD3njZXp7LYz2eh", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File after no File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yBMqPquSFFc8aPcxu", "msg": "This expression failed to be typechecked line 43, column 2, filename=/tmp/alloy_heredoc18148079686892886468.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:02:14"} {"_id": "L2qpQZtTHXgmcD4nn", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (always some f:File | f not in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall File in Trash implies once File not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YFjpLcz9Qx77j5KYh", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:55:08"} {"_id": "LiDFi5sMmbPuH7P6j", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tall f:File | (f in Trash and f in Protected) implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "C8afWwyRarPiCpLvJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:41:26"} {"_id": "d54JEWsMKSMeiygBq", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall f : Protected | f in Trash until f not in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "T56wqdvPj8XB4QRE2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 17:08:41"} {"_id": "7X86uYLjpY6LWhfx4", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DM8YdsDjbjFHqgXFf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:19:36"} {"_id": "dHdD3DsquEDXckReM", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (some f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xjJjZSGKhR6JuoTgk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:28:46"} {"_id": "DMZZ9c6xDfwwL44ju", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f not in Protected releases f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MgpYRNzAWAJFQx4NA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:54:56"} {"_id": "BzcvAcvfrGPHicSjB", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | always f in Protected \n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rGQbKM57KDQSc9tMe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:41:16"} {"_id": "BjYi8Wi3xBi2pvPAR", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n eventually some f:File | f not in File' and always f not in File'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pyTpP5b6bndv47zFy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:52"} {"_id": "9nNSDMWQkxHYi6QYq", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "8bZf3BxfbWknRpkWR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:18:27"} {"_id": "PnWY4KrquTCmEQPYs", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GBqKrzCKp2xJzzK7b", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:54:00"} {"_id": "sXKfufsNiryJ4RNgc", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yDbnybxHmhtTfaBsy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:39:17"} {"_id": "FTS4qRF5DAYyn4Ppi", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | all f.link implies eventually f.link in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "y6EofXWqzjpC7K5bn", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:35:18"} {"_id": "teLixa96By4TFXTeF", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \n some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eZXBuQYCwqYbiHZLW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 21:42:36"} {"_id": "xjJjZSGKhR6JuoTgk", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qJZPYncmTc4MNJZMc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:27:52"} {"_id": "mXdvqx7g7hdGmP2td", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\talways (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zTF2WAYyyqRMT4wR8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:33:29"} {"_id": "rxasa4ARNftYhvHbu", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MjmgNPsP98XJceGch", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:50:57"} {"_id": "Pn7B9zR5eY8hh9yAr", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (\n \t\tFile != File'\n \tFile' in File\n \t)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NQzpAxQWc2bepoeu5", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:55:31"} {"_id": "CDtsrfQvkdNkFQdRZ", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways (all f: File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rWjvRZBER5MKFt6or", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:48:06"} {"_id": "QWzXWc3pwzaTiHFkq", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kDTAFjFY2LGPAunQq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:19:54"} {"_id": "uNM3BWbrRcrHRBnmH", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "teLixa96By4TFXTeF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:42:42"} {"_id": "8zbn9sKC6iHz433iu", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f : Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f : Protected | always f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uqeT6aLoyAEimy6QH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:44:38"} {"_id": "93FzA25jWwHGRyAsM", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always (Protected & Trash) not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BRBsLqqmJ7Ek3fAH6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:20"} {"_id": "xTB3AfbBeGyi3hmDF", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:Trash | always f in Trash\n \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | one f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xSqXsEjXCKxw7BBMY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:23:52"} {"_id": "av7mfzGDt7X8iyZna", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome Trash and eventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:File | f in Trash and always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4fACXrWa3F94oMYCP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:59:47"} {"_id": "xZmzEjL4cHtLAQY2x", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "SjxXoxgHtixKZQLFt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:35"} {"_id": "98EFRz7bNi8brGkeB", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually( some File' in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KAtshFPvrAYXR9nEp", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:07:19"} {"_id": "xxfStMNvsEw6WQcTn", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | always f in Protected implies always f in Protected \n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ygu939Mf6W9zDPqMz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:45:18"} {"_id": "JLDzj9SbdPKjWr9Qz", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "y72BvA8rGXsmPskMG", "msg": "This expression failed to be typechecked line 26, column 10, filename=/tmp/alloy_heredoc17172808758499637262.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:45:39"} {"_id": "ja8Nj6x4sAmkPi6xw", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually some a,b:File | a->b in link implies a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4hmgr56t2cdKcLDp5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:50"} {"_id": "FyDQKLyT3ghqQ3vhs", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some File in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "NNZYx2HufY4Kh4nsg", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:12:53"} {"_id": "QnuPGXGFSYooSdE6K", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\tsome File in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "FyDQKLyT3ghqQ3vhs", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:13:01"} {"_id": "nmv8XaFnZGRYnMBSL", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BRrc8uxs3Qxxg6qT3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:54:00"} {"_id": "Mg43ihRTaSvKZS6uY", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QEtsLM2wmGAggiD6u", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:47:17"} {"_id": "F6Wv4j42nz55ieZXS", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File implies next some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iLxZtTCJdPH7tFEGS", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int->Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:50:00"} {"_id": "yjg3pxwTBEmfWgrtT", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (File.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LHvFkYkAQKWe6Ppkt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:56"} {"_id": "hsskJ3zkhFYLZ72gA", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\tall f : File | after f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WcamfKgi8nZ3QGcBF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:18"} {"_id": "zTF2WAYyyqRMT4wR8", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f:File | eventually f in Trash'\n}\n\n// some file will eventually be deleted\npred prop5 {\n\talways (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "beN9DFRszgTa2iK8W", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:32:49"} {"_id": "Qmhf7ed538YzfkB3A", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n\teventually all f:File | f in Trash implies eventually always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rmDAu2F2Z73terrMD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:46:27"} {"_id": "retfgJtdhaeSkgR4u", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually (f not in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "59pA9xFaWN3wdKvJR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:00:26"} {"_id": "CMFxAp9twKeZ9CTHd", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (\n \tall p: Protected | p in Protected until p in Trash\n )\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (\n \tall f: Trash | f in Trash since f not in Protected\n )\n}", "derivationOf": "KmR5GZtkSyuNtoFXr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-3 11:55:54"} {"_id": "SLK52j8bQ3XJofupw", "cmd_i": 17, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways f : Protected | f not in Protected since f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vAMo6GDYe8QiMoiXR", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:49:14"} {"_id": "5GZQuves787L9xSF3", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "s7nRD8kGWzYtfKL4t", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:52:00"} {"_id": "4cs6GhABzzQcFKfEP", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zCdmyEmbxY6ScCceY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:03"} {"_id": "BN3hnAZ7TtKW4Zw4x", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Gv54ooyXmaL5w2PNP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:48:23"} {"_id": "BZvHriHS89jDCaCoL", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and next some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wmEvHmJuaxG6q5ZzM", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int->Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:49:35"} {"_id": "PJfdi38EoXoYvRGCL", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "H7SS7Y33kEMqL773X", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:47:46"} {"_id": "vGxiDtwcfwQtkgmy5", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (eventually link.File in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wNPNhBGuWz6D2wcLH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:31:03"} {"_id": "t7oWgcrjLpbYYyr63", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Cw449rpXoY8sAuJZB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:05:35"} {"_id": "eaqm37bgfRgor8ACn", "cmd_c": true, "cmd_i": 14, "cmd_n": "prop15Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "qNwDws7syp3Cajivy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:04:21"} {"_id": "j4wX3hRj78SW8maoZ", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f not in Trash and eventually f in Trash implies after f not in File''\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6gmZ7uRspZ4FTunic", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:38:52"} {"_id": "NbekEviMPipMaG9Nr", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tTrash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FtobrDiqMwRtcZhfp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:35:09"} {"_id": "wshhAyXrnsXcAJB3n", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash && eventually f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "b39ujwSWP87vaDiSw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:44:21"} {"_id": "EAXmaaGerwaY54R5i", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File \n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EmzxdG8GbJ2qA2SYN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:47:54"} {"_id": "eEysM9dgSQaCgZRZ9", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually File & Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "NMmsfG4XX8tqEEvwe", "msg": "This expression failed to be typechecked line 57, column 2, filename=/tmp/alloy_heredoc3589051868857446349.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:28:48"} {"_id": "ifNsEDW5DTKqYs9h6", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7rGHCihSeLJWyTnYK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:48:09"} {"_id": "K2ejbWj7HT3mSFdym", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (\n \tall p: Protected | p in Protected until p in Trash\n )\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (\n \tall f: Trash | f in Trash since f not in Protected\n )\n}", "derivationOf": "4zDygwoYWF7AAqHv8", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 535.375, "y": 79.67999877929688}, "File1": {"x": 401.53125, "y": 318.7199951171875}, "File2": {"x": 401.53125, "y": 239.03999633789064}, "RejectedBySolution": {"x": 267.6875, "y": 79.67999877929688}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2020-1-3 13:48:36"} {"_id": "TgRdStbyxC4Tpp9xd", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dfK55Kdye3jMnDez6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:46:43"} {"_id": "M4APH3qafDXoTpHKd", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f : File | f in Trash since f not in Protected\n}", "derivationOf": "5Drqgcp8RiCbgPnBa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:57"} {"_id": "ijEzP7oxbpr86HBEC", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AjyECuvJYf3nuNYFx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:38:36"} {"_id": "4fACXrWa3F94oMYCP", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome Trash and eventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \tall f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6QQAae5K7Gb7AJJjS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:59:24"} {"_id": "NuAMPJ2hiiESCfXfJ", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually ( some f:File | f\u00b4 in Trash\u00b4\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3SZKcLHP66GwamLYf", "msg": "Syntax error at the ? character. HEX: \\u3f)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:16:31"} {"_id": "T28dven8RARLP7yv4", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & Trash'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QrCe2efrbgKS9yMPr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:12:41"} {"_id": "Giq3Tg2ePnrNNpdZk", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n all f:File | f in Trash always f in Trash' \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zA7LhJijbvYGg4aYW", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:15:07"} {"_id": "v47jPMDMdRNmEPcFy", "cmd_i": 12, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (Proteced' = Protected - Protected & Trash)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JusW44hPNrmd958kD", "msg": "The name \"Proteced\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:30:04"} {"_id": "HcNdwvuTwgsuwdniQ", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kup9Czn2eR23koXsE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:46:38"} {"_id": "33P2RgPJ8uDwiErbh", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | f in Trash eventually implies f always in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "whGrktACHQ3doKXQu", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:12:57"} {"_id": "uSc6tnhdZ9aFXH3Ro", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways( some f: File | f not in Trash and eventually f in Trash and after always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aoDa5gZQuHptNqN6c", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:23:28"} {"_id": "PTmetW7PE3PBMCpTH", "cmd_i": 19, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : Trash | since f not in Protected \n}", "derivationOf": "zyAZhtdrSbY5yAjNt", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 19:28:36"} {"_id": "xFd2Lx66M7qrW9soT", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (some File.link implies eventually F.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kfZiDEDAFkYbMs2QK", "msg": "The name \"F\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:01:02"} {"_id": "Sq9ZFW5mpmNwB6bEZ", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually Trash and always Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HrtDafvgo3kncvzLc", "msg": "This expression failed to be typechecked line 76, column 2, filename=/tmp/alloy_heredoc2849274812028984536.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:55:35"} {"_id": "kXPn2TySQDYqdvgki", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways all p:Protected | always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qhM4boWuXBCFLa7ib", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:18"} {"_id": "QyyqNz9mvoxHq23Xi", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tall f : File | (f in (Trash & Protected)) implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "KvuCtBNYAMscB3zuL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 22:54:37"} {"_id": "LEYxiEGCkfD9i4yML", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : File | f in Trash since f not in Protected)\n}", "derivationOf": "A5bAY7qSJhijuucpo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 20:20:57"} {"_id": "sEi5xRCC4ZXpBgyHk", "cmd_i": 15, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t (historically Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gYkEABYhtmgpWyiYE", "msg": "This expression failed to be typechecked line 96, column 4, filename=/tmp/alloy_heredoc5253168735649121918.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:37:27"} {"_id": "TqrHyRFWFSAuGoGtn", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "HZ3rYSwov2evKq3Bc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-6 11:36:24"} {"_id": "ZjGpyws7okkNoBqwG", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t all f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Trash | f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash \n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "ba32kDT9NNBrLPQTi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 11:35:24"} {"_id": "maLgDqr2ftJsLqSnZ", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all (Protected not in Trash) )\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JdKmNBzoabnfm4Zck", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:37:59"} {"_id": "u9DkpyfhTXNkLfZFW", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hahg2q5w4syzTcwHz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 15:59:23"} {"_id": "Kd5iRenzATR6S3DL4", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways some f:File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "G4RxRJCvSFPchevPN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:28"} {"_id": "caxmPqPD7oAL4AeBf", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "3mGqYrJpBk9Mupmzt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:11:43"} {"_id": "GDiwgdAAZYNSCzYJG", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZjouWioQQNKC5iunp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:29:05"} {"_id": "LEBbu7ZyFqDvfaTTz", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4rHs2AmEG6N4fYeqX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:00:59"} {"_id": "m7Zbue483cMrMXHLZ", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\tProtected' in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qZTzwybNSKRm45fcM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 21:53:26"} {"_id": "k5zchhFTS9qnTAcyk", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ErcHQ2LffnCJ4nKvo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:52:33"} {"_id": "rhC4mxw3FZWcibS5E", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f : File | eventually File' = File - f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "D4SCRxE4S7eqp2ghE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:54:20"} {"_id": "LGCzHbCd8fQJ6adPf", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zxsn5B4352rTkPKpn", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 19:37:16"} {"_id": "vwiJfNd9yEb68vMiw", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | always f in Trash implies always f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dkbRLCYS7EAcBvZse", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:17:17"} {"_id": "sojrm7zzWqoXww9sx", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways Protected not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yxt9vT4M3bmLtWjCs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-8 00:53:31"} {"_id": "KxwvMZXGbh8kMTFWa", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\teventually always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ts39Xcr3545MDQQHT", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:14:37"} {"_id": "S98SJyf9YFsEC9Lrm", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "c7oPT7XTZnPECr45t", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:30:25"} {"_id": "rf5wwnYMbY3QBwFh7", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : File | f in Trash implies after File = File - f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | (before f in Protected) implies f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "w6HvydWuBWAfojFW5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:38:26"} {"_id": "ToJWgv47cRMKQk78H", "cmd_i": 13, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Tash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uoxHiDp6qpqActCAC", "msg": "The name \"Tash\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:34:46"} {"_id": "LHfYAHnTqGKMCsbu2", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "h9YPs7E5r3KbhoAZP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 20:18:20"} {"_id": "iRx43jwbA8r8i3Czs", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rM7encnZLKMedjwW4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:52:25"} {"_id": "ZqF7JSFp3NzQxQDsT", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | f in Trash triggered f not in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "F8TNYSSWhYDYbb5Bz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 14:10:56"} {"_id": "SQz4KYtR4QMEeDXdj", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wM6Ro4BEC98X2nuJh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:58:40"} {"_id": "nGEja83thZ3dYPz5n", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways eventually all f:File | f in link.f implies link.f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "g8kDRhCC7RZTrrZs8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:31:19"} {"_id": "McYtBG7c84xQocT7d", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways l in link | eventually l in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8MW2uz2GfCfcrZoiR", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:28:19"} {"_id": "KZ9cfFP732Pqbjjhi", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : Protected | f not in Protected since f in Trash \n}", "derivationOf": "sK7xzgHjg4bcBrSrA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 19:23:35"} {"_id": "CJPWNNTBMJEC6QyK2", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all t : Trash | t in Trash since t not in Protected\n}\n\n\n\n\n\n", "derivationOf": "GPDqTWCdsiAcWdR4f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:23:30"} {"_id": "9QzZgydoqvYb4eEcD", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f,g:File | eventually f->g in link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ix6v7CieKPmo2ma4p", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:32:45"} {"_id": "TXbeLRkQLnoso66QC", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Szr2QD55bRviL3bzB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:48:52"} {"_id": "XmWvrMuMGuPikf4wY", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some File in Trash) \n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ERT5kFfK6ZqMGbY5A", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:00:47"} {"_id": "ymPTQ5pMFaBXpjkkr", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZEsoGT3TN63s8qPbN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:33:35"} {"_id": "F9sn5MC8TPo8xMtgq", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (\n \tsome f: Trash | f not in File'\n )\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wxuJ3nWaubKfXKAEf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-2 18:41:29"} {"_id": "zfmqMyd2KvK5Qp7ro", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MWDKLbNE4zZMWJHjJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:29:30"} {"_id": "bCuL2wqJK9khxz7Pr", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \teventually always all f:File | f in Trash implies always f in Trash' \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LwoG2GydxupuQWqde", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:15:15"} {"_id": "cAjaq3y2tWFKB36XQ", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways ( Protected not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "P3gFuEkajduWTyFeo", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": []}, "nodePositions": {"File0": {"x": 698.65625, "y": 199}, "RejectedBySolution": {"x": 349.328125, "y": 199}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-10-31 11:47:27"} {"_id": "Ezi9acqZSAC5vMSSC", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n}\tno Trash+Protected\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jTHThQGNK2KpXyviZ", "msg": "There are 5 possible tokens that can appear here:\nenum fun let open pred", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:03"} {"_id": "SuxoPuTMM4a3aDwiQ", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\talways all f:File | once f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash && f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CDQHTey9YQGTWF84H", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:47:08"} {"_id": "BjrTNS5yNjBcEnLQd", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t(always Trash) releases (File in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Nz2JQEpqvpYWPnnDY", "msg": "This expression failed to be typechecked line 46, column 3, filename=/tmp/alloy_heredoc810711216590986270.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:21"} {"_id": "9xbDTtLAkg9CuPicG", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HMsqQxFnCSHyM8hYJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:24:22"} {"_id": "bg9TxRS4LB6BAS2bA", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GDiwgdAAZYNSCzYJG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:29:14"} {"_id": "qZTzwybNSKRm45fcM", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "oy8JmkDMcihj2Z3Ae", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:53:05"} {"_id": "sK7xzgHjg4bcBrSrA", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | always f not in Protected since f in Trash \n}", "derivationOf": "48ecLTsP7cQ4QW3w5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 19:21:17"} {"_id": "qLSEpEELoHgRJroj5", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:File | eventually File' = File-f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eHRYmixC4DJNHTKnL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:00:19"} {"_id": "jgsThgwQ2EFYBcBQC", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wLT9AsksRQcodJF37", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:03:20"} {"_id": "WNZP4Rme4aoLvL4JS", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\tsome f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZxTY9edHc9WGF5K6W", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:09:47"} {"_id": "dx4idF2EDBFt6jHe2", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nQ2gkczCMvNusttiS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:09:49"} {"_id": "queSmDyZsr8DrmiKD", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in f.link implies f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "v6NEfQeanjGnFoHQC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:20:37"} {"_id": "5iCnGWSM3xFKenvyH", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f: File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CM7uFrKxPxjtKJLbK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:17:20"} {"_id": "MbsKXsgxyXNmbFj5D", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File in Trash\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7PzTiADZP2dZAbRiF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:25:28"} {"_id": "WpvfSi2M8aGw95Z2M", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ljx6TqkijRprpQTuD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:58:07"} {"_id": "oY2bKb7otHp8M8ZMF", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall f : Protected | f in Trash until f not in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "d54JEWsMKSMeiygBq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:08:48"} {"_id": "YFjpLcz9Qx77j5KYh", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (always some f:File | f not in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tsome File in Trash implies once File not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pwh3Gm8qAyXroSsyL", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:54:48"} {"_id": "HSbXfeqgJzYLZQHxz", "cmd_i": 15, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n \n always historically Protected = Proteced'\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pBuL7LBbfsv5tzDQP", "msg": "The name \"Proteced\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:35:59"} {"_id": "MEX54YXZZ7MyogQYj", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "qi5GQJ55kNkRACEE7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 20:21:54"} {"_id": "eD4exiXzkcW933Spm", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "o6Enqj4XpQW4xgjSE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:44:10"} {"_id": "ezsiDvnTMwwFgD74m", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways (some f: File | eventually f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fmeqCuNhQvptMQZdX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:45:11"} {"_id": "TGuMCpS5NJgowxJYA", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways some f:File | f in Trash implies f not in Protected\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AJcCf6KWeaLX2WNSm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:32:55"} {"_id": "QKAgMhWwCu8gPnfBd", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways ( some f:File| f not in Trash and after (always (f in Trash)))\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "z2aezyLHo83DqobnM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:02:44"} {"_id": "wM6Ro4BEC98X2nuJh", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fkXwyvMwsr6yp5nLM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:55:46"} {"_id": "9wbGmWLJq6Syvgn8k", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "EwXabmSfX988Z4hk6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:08:31"} {"_id": "7Y2G9XAn4c6XjSCu6", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TBJNx238okkqsL22H", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:51:26"} {"_id": "Z8wyAzBirEoChfRtu", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NwshHL6AX6T4jsnEQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 04:54:05"} {"_id": "qZqoFARdavvuW7wFF", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tFile in Trash implies always File in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7Bt7ybszYGd3wmSnX", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:55:45"} {"_id": "MStvuym9eyQPD6ASJ", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "S6gFmgmKJTGpcceRj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 00:50:27"} {"_id": "55tSmA4q8pCkjnzHz", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n some f:File | always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NhApmCACoQp7enygT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:39"} {"_id": "7tqnnGZk9EJLLFYjk", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\t \talways all f:File | f in Trash implies f in Protected'\n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TMfyk88J5EYF3AoiC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:33:17"} {"_id": "Wg4nEn5YfvZzzh5G4", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always (some File)\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (Trash' in Trash)\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FKo8Zd8NXkQ7vDA5T", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 08:45:55"} {"_id": "WXfDqeZJcefnZMMDe", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CEgntSWPpmpcNkxj3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 20:56:10"} {"_id": "bumw5Eybq9pex6Jzs", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | some f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wr4dbYkPsi5qutjfH", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:30:41"} {"_id": "A6rNAnevwDPwi2bAK", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \teventually all f:File | always f in Trash implies always f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FvrHqufmzdKNwjB8e", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:15:00"} {"_id": "9jTJusYPoX3nrufDu", "cmd_i": 8, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f, g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways f:File | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aGxhN8qufG766zoQb", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:40:49"} {"_id": "7PzTiADZP2dZAbRiF", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some f:File | eventually f in Trash\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Dvy4uE98ziHMBkq4Z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:24:55"} {"_id": "pprwoeWKE6b5Jnsrf", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Wcwmqvi32rovdBX4Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:59:37"} {"_id": "XptvXev54vKx8HySc", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies always f in Trash\n \t\n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SY5yaAw848bwTYah2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:19:51"} {"_id": "RbuPixjB7aCQPbtC3", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "cNSxYdStwsXcBq5nH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:07:28"} {"_id": "9GxamuCyKHJ2Zzi6Q", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bnduceBFB6W2TSG4B", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:59:33"} {"_id": "zunhSHoSJYcNCon58", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t some f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uFWLKB5GnghZdC7YE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-11 22:28:01"} {"_id": "2fHaZnuosKLZjMWet", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zPdnksiWSoQXYWhP6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:36:21"} {"_id": "DLQ9y3jdm49F59zpj", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gHKNfZq2yAkrBDxTE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:32:37"} {"_id": "GQvEG2DaAAH2SzyMC", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some File & Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n", "derivationOf": "jsa5g8N5BbZNWBSRN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 16:13:40"} {"_id": "qHGTKdoYF8GsgnyP4", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-9 08:42:23"} {"_id": "feAqeidonnHemeEiG", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \teventually always all f:File | f in Trash implies always f in Trash' \n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XwMSGNFsTL28KgBMz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:16:14"} {"_id": "ru23KMW6KGfC5ompq", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f in link implies f in trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uSWrSu6metjLGNdqq", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File}\nRight type = {this/File->this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:20:04"} {"_id": "rF7fiitgM2WHX7ymX", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kXPn2TySQDYqdvgki", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:22:36"} {"_id": "EXr6zwiDDnz5u3Gay", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways ( Protected not in Trash')\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:45:55"} {"_id": "a7X6yqaDc4n8GotgC", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "288vYE48z6qfGLP6Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:10:38"} {"_id": "sKkEqXPoGZd3ZfCvJ", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | File'= File-f)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2HeEPat8GSjECXj7k", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:40:24"} {"_id": "CnpS6Fh7HnPyJXNFz", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t(File + Trash) - Protected in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "DEcYoqH9H6ECMDaZk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:12:24"} {"_id": "BMBK32BgYpc6CZoYh", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n}\tno Trash+Protected\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \t some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Cj5Qs4SEYZ23AbftE", "msg": "There are 5 possible tokens that can appear here:\nenum fun let open pred", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:53:15"} {"_id": "zJkC3SifijEWBjg5X", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "y5PDAJNAzhdT9NCEj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:31:20"} {"_id": "Qtqtizo6pWpHDmm8g", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BgWPhTMN6QFL9t7Xm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:00:45"} {"_id": "Sj5z9tNC4ysJauSaw", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | always f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "oz9keCq89FbgTtZhG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:29:41"} {"_id": "pxFWPyYscfCc9Hgwe", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in Protected' iff f not in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TcrPbLJRhH85SA3RP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:48:27"} {"_id": "EyXPLRr5k34BYxAwf", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (Protected in Trash implies Protected not in Trash')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6vw72bG6JCNhxeDcR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-6 10:30:03"} {"_id": "dKR4bsFMdsgKbAYDZ", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rAiA5uctu3iXcLN4Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:55:02"} {"_id": "YeW6xEuCw8guhDzW6", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "iP562AHwTvmm4SfpP", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 353.16668701171875, "y": 159.2}, "File1": {"x": 470.888916015625, "y": 79.6}, "File2": {"x": 353.16668701171875, "y": 318.4}, "RejectedByOracle": {"x": 235.4444580078125, "y": 79.6}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-11-4 22:24:27"} {"_id": "pwuzRcdFJJ2GqdA9c", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Rykvs47eaXFMRSoPr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:48:38"} {"_id": "R7XheFZEoDRTwb4Y7", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f, g : File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kkiqvJZNmKjaRhxHi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:34:30"} {"_id": "jzv82LKu3Pw3FhYpM", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all l:link | l.File in Trash'\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Gk4togHnqdEA4Qf2y", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:18:25"} {"_id": "hDwYrDyoQi9btn4Yx", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n (some f : File | eventually f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pwuzRcdFJJ2GqdA9c", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:49:43"} {"_id": "A8MCKYCT5XmsDbacY", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\npred isLink[f:File]{\n\tsome g:File | g->f in link\n}\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n all f:File | isLink[f] implies eventually f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "teMX2xY3uuJsM4Tmr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:38:21"} {"_id": "57tMghabS5MzZXpev", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "Ap78f67baGYdpZ48L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 21:53:22"} {"_id": "DkqEonRWW57A48o2q", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rDbQCaMexG3HGfgqy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:47:46"} {"_id": "NLZj6Npak9Capwspk", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected)\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2f4RoM4ALLZEehymh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:21:14"} {"_id": "TRYws93LPotdo6Tyt", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mwXH4PXYu8CySYkEj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:42:29"} {"_id": "cf5atQ9pjABboGBE2", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually some f:File | f not in Trash implies always f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JSWwpWHCnvBZAwQt9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 20:21:53"} {"_id": "ZF7tb3AJjFSSYaNpY", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall f:Protected | always f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MisHHmkSeMerpmLJi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:45:57"} {"_id": "vkr36qJEdjwXW4nx6", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome Trash and eventually no Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rgxHeXqzQ7vxpBA5r", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:56:27"} {"_id": "DEcYoqH9H6ECMDaZk", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t(File - Protected) - Trash in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n", "derivationOf": "QJmapWca6mCwujLSF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:11:54"} {"_id": "8oQoeRfsJfM3RJeak", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tR3S84y43rSL9524d", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:27:48"} {"_id": "HSmN3AykgxFZ5kKKD", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mFPY8XCBj8o2awxwt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:45:26"} {"_id": "r66QKZgiRWcxJkYtp", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "P75NMe6wPSYh65xW2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 23:24:41"} {"_id": "ipADGtxxtB8mWsZTW", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | eventually f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "axGqH2DkExeNKs27B", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:56:21"} {"_id": "GQMRTeYd6tSpWukdz", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n}\n\n// some file will be protected\npred prop7 {\n \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nYejJthEAf4yssuC6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:01:49"} {"_id": "cjK4u23ZAfYm8fatA", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually all f : File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "SQ9E4sCGEtw26u5aB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:03:57"} {"_id": "6DT8oZjfkemKShrD9", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | always f in Protected \n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wLqjoJssRqJ3nymxr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:43:47"} {"_id": "f8KGJRNZZGQFhywTY", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "oBBsWZPAMP35TY5k6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 17:20:35"} {"_id": "DkYZ27SE8yoEdFELe", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\npred isLink[f:File]{\n\tsome g:File | g->f in link\n}\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n all f:File | some g:File | f->g in Link implies eventually f->g in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "A8MCKYCT5XmsDbacY", "msg": "The name \"Link\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:39:00"} {"_id": "T5xJtCwXCnQJ8iat5", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t(some f:File | f' in Trash') implies (always f' in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PB6cGnR6gpc9bGeZJ", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:32:11"} {"_id": "bm6b83yckqd2pafKA", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tBEDEdQB8yzMb7Hji", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:46:18"} {"_id": "FFJQJnEEEKeBp6o8T", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually no File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XdtKyFZCN6kgbQdPN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:37"} {"_id": "MjmgNPsP98XJceGch", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | File' = File - f)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ntm7ACaPc9KHx7DmB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:50:35"} {"_id": "xyhjLJP53N4n6DhJn", "cmd_i": 11, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways some File eventually Trash implies Trah = Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "czrr9Jsfc5jPcuL9L", "msg": "This expression failed to be typechecked line 76, column 19, filename=/tmp/alloy_heredoc15328567862318288368.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:17:31"} {"_id": "BxbDnH6AatrrTLh37", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies always f in Trash\n \t\n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XptvXev54vKx8HySc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:20:56"} {"_id": "iP562AHwTvmm4SfpP", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "k6QtsJvLX2wheNNSW", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 353.16668701171875, "y": 159.2}, "File1": {"x": 470.888916015625, "y": 79.6}, "File2": {"x": 353.16668701171875, "y": 318.4}, "RejectedByOracle": {"x": 235.4444580078125, "y": 79.6}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-11-4 21:55:21"} {"_id": "DzsNPC4kMXPp9xwZu", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash,\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:41:10"} {"_id": "sP2i3NkvtasnrfTRG", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno file\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nmv8XaFnZGRYnMBSL", "msg": "The name \"file\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:54:07"} {"_id": "MgpYRNzAWAJFQx4NA", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f not in Protected since f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "meq3n8z5dMuLbpbyG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:51:57"} {"_id": "aq7YSWZNinH2o2xWh", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File|f in Trash implies always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "h5kzknfqSf2izyGoH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:58:15"} {"_id": "4YW5BDkNbk3dX6Wf9", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always ((Protected & Trash) not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "y6m4nbokKECugXfFx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:09:00"} {"_id": "PLGTpdePL4dNSihy6", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | Protected' = Protected + f\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ewRiam5ydn7ToBsrN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:43:29"} {"_id": "SLpz4Djidgm8peC7N", "cmd_i": 14, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | (f in Trash and f in Protected) implies (f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually f in File implies f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "axv8enTBupBncs38Y", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-4 20:51:26"} {"_id": "2HQpCkjs68vhFuqsd", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "85A73yE52ESfnPN35", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:12:21"} {"_id": "m5EEeqsAy26aEubEi", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n some f:File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3rqLrkDZx3NRiBRaY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:19:18"} {"_id": "CmCzZKTCDGTX6xFQE", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "iP562AHwTvmm4SfpP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 22:15:07"} {"_id": "vioDzq4QADwHoax9G", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n some f : File | eventually f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TRQvARzndw4YmDvsh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:47:30"} {"_id": "fnJzrrpcj6umPDv5Z", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | eventually f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hK59jnYbjZm4MQnEE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:56:51"} {"_id": "dezhpKsRY8SLJBk78", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | one f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "S4kqo6K7jPpdsmZjf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:25:21"} {"_id": "SZv7qrqx4kCef6jzk", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' until p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until eventually p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "udKSNFLKZQqd9gRZv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:16:53"} {"_id": "5CvPYJ8LeasqTKAFy", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f,f1 in File | f.f1 in link\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mRTQNrsJHaKGg7dJC", "msg": "The \"all x\" construct is no longer supported. If you know the range of possible values of x, consider rewriting it as \"x == set_of_all_possible_values\".", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:30:06"} {"_id": "vAMo6GDYe8QiMoiXR", "cmd_i": 17, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways f : Protected | f not in Protected since f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PGim5o8Zj2zoR23FK", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 16:48:55"} {"_id": "zF5nyeBH7Bpt3CEzS", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: File | f in link.File implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Sw8FjtauH6sHNjyE3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:29:09"} {"_id": "z3jxddjGv8JMDtvmC", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\teventually (all f : Protected | eventually f in Trash implies historically f in Protected)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YZcNgLEDt3W4QvHvA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:17:46"} {"_id": "j7Ywt3tqwHMTowXWt", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File | eventually f in Trash and after always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f: Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "99e8Hb3LPu9oeLocq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:48:09"} {"_id": "nCNY9bme3qjqxSvGh", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AmpMtMsf8qiLqDfqs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-11 21:43:52"} {"_id": "aRDTcxKzJmanTWkaa", "cmd_i": 9, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways p:Protected | always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Zs2gAvyqWkhjGAHSs", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:25:22"} {"_id": "9fbbhrfh7CEfoEDtL", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tafter ((File & Protected) in Protected)\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "t5FQYc9cwFPghWosH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:19:34"} {"_id": "EG5tZo4etux2meYBP", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XbJAYv8CRQYuFPSj8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:19:51"} {"_id": "HJuDCX3Zj4dbkpd9m", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (File in File' and File != File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "oTvgvW8Fp2L5gzcgw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:54:20"} {"_id": "3uamAes4ZJN87sZ3b", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:File | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SQSNaepPLYxGywEvq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:36:41"} {"_id": "pB4ZpdPPNGasraE7G", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (always all f:File | f not in Trash implies f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uX995LQFNxRvnX5CC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-29 17:51:54"} {"_id": "5hftHhkbxHqMa63s6", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File in Trash\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome File in Trash implies always File in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MbsKXsgxyXNmbFj5D", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:27:18"} {"_id": "38aWjvGCon5TxaBeC", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways eventually all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tX8KRM22NLQdtNnEQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:55:49"} {"_id": "wbwF4otQQ5YCPe5cc", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall f: File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ST3gjdSJpSmzsowir", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:27:52"} {"_id": "aFLuW3G5ny4iizE7E", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fzZsxMsDKm3YM9tyb", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-8 00:48:53"} {"_id": "72PuX2nWiRNRY9eTr", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FLSEcBqrTDauBNhbn", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:55:14"} {"_id": "xtA4kCM7qh3Gm8t4Y", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (some f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "D4qYjzCCBxGEBk3Dp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:54:31"} {"_id": "cMa6bo7GBaPyQAnsr", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually ( some f:File | f\u00b4 in Trash\u00b4\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NuAMPJ2hiiESCfXfJ", "msg": "Syntax error at the ? character. HEX: \\u3f)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:16:45"} {"_id": "Kw9iqgge8aAj8vHx7", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | f in Trash, f always in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "R4LjemyeFhKD8Q5h5", "msg": "There are 38 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { } ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:13:52"} {"_id": "tMWGrRkotYudAFPEn", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:41:00"} {"_id": "8fvoMsEZupzDgRwqR", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n\tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File') \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:Trash | always f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2HQpCkjs68vhFuqsd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:12:28"} {"_id": "TRQvARzndw4YmDvsh", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HcNdwvuTwgsuwdniQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:46:54"} {"_id": "fikv7uDEZE9i6irwo", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f, g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \tall f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xPBXWd5vNipDjy3eB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:42:44"} {"_id": "gyZBRxr73NwGf3GS8", "cmd_i": 18, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tevntually all f : Protected | f in Trash implies historically f in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "47P42hxNm6CZFtaov", "msg": "The name \"evntually\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-1 17:14:25"} {"_id": "upbPZYaL4FFpray8E", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all t : Trash | t in Trash since t not in Protected \n}\n\n\n\n\n\n", "derivationOf": "2KQLgJXbTcgaaryzF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 23:20:50"} {"_id": "H7SS7Y33kEMqL773X", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File'\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash'\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uQuMmJEzt49Y4o95g", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-8 00:47:00"} {"_id": "WcNobCAEMheBJ4cQb", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f->link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BpvdtQDx8q8oHuRyi", "msg": "in can be used only between 2 expressions of the same arity.\nLeft type = {this/File->this/File->this/File}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:19:20"} {"_id": "QDmD99X6o5yQJBpH8", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vtH6okGoqNXQ2SxiB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:36:08"} {"_id": "yMnttWnq6kQA2sRm7", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until eventually p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "vJc42Za5zrvPD6smp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:17:39"} {"_id": "8cbPbz277weaeondP", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "THfBPpurmaW3SXBin", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:02:03"} {"_id": "3vKbvNwtvZL3cGbCa", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\tall f : File | f in Trash implies f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n\n\n", "derivationOf": "RbuPixjB7aCQPbtC3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 23:08:19"} {"_id": "XddQZbFdfBWa9zw5c", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (some link implies eventually link.File in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "G8HajbvgtAHKtHRdq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:26:47"} {"_id": "HZHFtAfFzoApzE2e8", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File| f in Trash implies always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aq7YSWZNinH2o2xWh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:58:31"} {"_id": "Ey7xC9xHFRFLMr8rv", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : File | f in Protected triggered f in Trash)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always (all f : File | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YufcjRbAX7Tvsy9Ym", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:44:18"} {"_id": "C2pTZ5d93MPL7uXiD", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "2zyv6mSDwrE5AkvSr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:23:41"} {"_id": "yDbnybxHmhtTfaBsy", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually (some f : File | f in Trash')\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NbekEviMPipMaG9Nr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:36:27"} {"_id": "Hg3SaDNqMc3uSXY64", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\talways all f:Trash | always f in Trash \n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8rCG3b5KtEHioq3Ek", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:18:18"} {"_id": "fQqGJyNkMGfSfDHLn", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\talways all f:File | eventually f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NFQtnxhjA6eshq2q8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:31:17"} {"_id": "NCs6B9W6a4y3MQLMw", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually in Trash\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "C2pTZ5d93MPL7uXiD", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-29 17:24:22"} {"_id": "QrCe2efrbgKS9yMPr", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tkwkizD2kj4QixxmL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:12:06"} {"_id": "EmzxdG8GbJ2qA2SYN", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File && next some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ETBLdEnfXPgC6r9J8", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int->Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:47:41"} {"_id": "ZXAAX8tm5Cow4rzCx", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash && no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File && next some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TQsbrG4MtCsBsD4YL", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int->Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:51:45"} {"_id": "WmztYCYqbrKhjpoKp", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "T9w8XuQioW8bHnkMa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:42:32"} {"_id": "tX8KRM22NLQdtNnEQ", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies f in Protected'\n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iRx43jwbA8r8i3Czs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:53:19"} {"_id": "H6xz8iqq48LaeaBvH", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PNoKqxGPXat6dfi9A", "original": "9jPK8KBWzjFmBx4Hb", "theme": {"currentFramePosition": {}, "currentlyProjectedSigs": [], "generalSettings": {"currentLayout": "breadthfirst", "metaPrimSigs": [{"parent": null, "type": "univ"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}, {"parent": "univ", "type": "File"}, {"parent": "univ", "type": "Int"}, {"parent": "univ", "type": "RejectedBy"}, {"parent": "RejectedBy", "type": "RejectedByOracle"}, {"parent": "RejectedBy", "type": "RejectedBySolution"}, {"parent": "univ", "type": "String"}, {"parent": "null", "type": "univ"}, {"parent": "Int", "type": "seq/Int"}], "metaSubsetSigs": [{"parent": "File", "type": "this/Protected:File"}, {"parent": "File", "type": "this/Trash:File"}]}, "nodePositions": {"File0": {"x": 710.4, "y": 199}, "File1": {"x": 355.2, "y": 199}, "File2": {"x": 532.8, "y": 199}, "RejectedByOracle": {"x": 177.60000000000002, "y": 199}}, "relationSettings": {"edgeColors": [{"color": "#0074D9", "relation": "link"}], "edgeStyles": [{"edgeStyle": "solid", "relation": "link"}], "showAsArcs": [{"relation": "general", "showAsArcs": true}, {"relation": "link", "showAsArcs": true}, {"relation": "RejectedByOracle", "showAsArcs": true}, {"relation": "File", "showAsArcs": true}, {"relation": "this/Protected:File", "showAsArcs": true}, {"relation": "this/Trash:File", "showAsArcs": true}, {"relation": "RejectedBySolution", "showAsArcs": true}], "showAsAttributes": [{"relation": "link", "showAsAttributes": false}]}, "sigSettings": {"nodeBorders": [{"border": "solid", "type": "univ"}, {"border": "inherit", "type": "this/Trash:File"}, {"border": "inherit", "type": "File"}, {"border": "inherit", "type": "Int"}, {"border": "inherit", "type": "RejectedByOracle"}, {"border": "inherit", "type": "RejectedBy"}, {"border": "inherit", "type": "seq/Int"}, {"border": "double", "type": "this/Protected:File"}, {"border": "inherit", "type": "general"}, {"border": "inherit", "type": "RejectedBySolution"}], "nodeColors": [{"color": "#2ECC40", "type": "univ"}, {"color": "#FFDC00", "type": "this/Trash:File"}, {"color": "inherit", "type": "File"}, {"color": "inherit", "type": "Int"}, {"color": "#FF4136", "type": "RejectedByOracle"}, {"color": "inherit", "type": "RejectedBy"}, {"color": "inherit", "type": "seq/Int"}, {"color": "inherit", "type": "this/Protected:File"}, {"color": "inherit", "type": "general"}, {"color": "#FF4136", "type": "RejectedBySolution"}], "nodeShapes": [{"shape": "ellipse", "type": "univ"}, {"shape": "inherit", "type": "this/Trash:File"}, {"shape": "inherit", "type": "File"}, {"shape": "inherit", "type": "Int"}, {"shape": "octagon", "type": "RejectedByOracle"}, {"shape": "inherit", "type": "RejectedBy"}, {"shape": "inherit", "type": "seq/Int"}, {"shape": "inherit", "type": "this/Protected:File"}, {"shape": "inherit", "type": "general"}, {"shape": "octagon", "type": "RejectedBySolution"}], "nodeVisibility": [{"type": "univ", "visibility": false}, {"type": "Int", "visibility": true}, {"type": "seq/Int", "visibility": true}, {"type": "general", "visibility": false}, {"type": "this/Trash:File", "visibility": false}, {"type": "RejectedByOracle", "visibility": false}, {"type": "File", "visibility": false}, {"type": "this/Protected:File", "visibility": false}, {"type": "RejectedBySolution", "visibility": false}]}}, "time": "2019-10-31 12:06:53"} {"_id": "SsNi2WNShRPPnaudD", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bB63vKb8Zv4SzaK3q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:43:25"} {"_id": "ERT5kFfK6ZqMGbY5A", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually (some File in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "koptRxpMsCh9Tt2yv", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 16:00:13"} {"_id": "Ygu939Mf6W9zDPqMz", "cmd_c": true, "cmd_i": 15, "cmd_n": "prop16Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n \n always all f:File | eventually f in Trash \n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n always all f:File | f in Protected implies always f in Protected \n \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FPXLXyapPzPAKbBnM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 19:45:14"} {"_id": "kDTAFjFY2LGPAunQq", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XumSWXtJF2PDQhTzf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:19:15"} {"_id": "RtWJWv8ueT99gWzDZ", "cmd_i": 6, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f : Trash | always f in Trash\n \n \n}\n\n// some file will be protected\npred prop7 {\n\talways all f : File | after some f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dT5zBEXPe9pNyb4fk", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:24:44"} {"_id": "8MW2uz2GfCfcrZoiR", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XZeL2kW5BN8BceRWd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:27:14"} {"_id": "S6QvELCCmqLrbPAar", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JX65Qd4Y67N9gzTMq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-29 17:40:29"} {"_id": "ewruHRmPmGRfg5tHG", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : Trash | f in Trash since f not in Protected \n}", "derivationOf": "v2MCjHYcb4YXkHB3d", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 19:25:49"} {"_id": "SeqiRJMDbbScpoLJT", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some f.link implies f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Se5XatvSe96mZtW2f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:33:50"} {"_id": "SY5yaAw848bwTYah2", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies always f in Trash\n \t\n}\n\n// some file will be protected\npred prop7 {\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EFNSxHStKfAXRDhQZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:19:36"} {"_id": "qyRYN8AEYsComRu5v", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File \n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some File\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "97a4WE8AoxRm4YWqL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:55:44"} {"_id": "ecwAxPPYKBH7hwAYC", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies f in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually all f:File | f in Trash implies always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wv7jQgMMfCgo79TP3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:42:47"} {"_id": "aHyvCFHShHjkf8yaE", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "TgRdStbyxC4Tpp9xd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:47:07"} {"_id": "Zeq3wwipucLk4eaRD", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (some f : File | some link.f implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xtA4kCM7qh3Gm8t4Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:54:45"} {"_id": "5Drqgcp8RiCbgPnBa", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "7wPGJcy4faJmqDuGh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:21:43"} {"_id": "tznHNBkXmgACTPqSq", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RCXncn6hZ9wGb5McQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:20:23"} {"_id": "WMMFjmdM7tzqcL6QP", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "89pzjDpv7Srmd4ntF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-19 16:51:14"} {"_id": "c5vmXBGaGPGqKSWPR", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f, g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \tall f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7pjtAZvmCFmddJ26b", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:43:23"} {"_id": "n6Twqrmra4T9QAXxt", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:File | f not in Protected triggered f in Trash\n}", "derivationOf": "8ZwKCdrinEK2dCAgs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 21:50:09"} {"_id": "JusW44hPNrmd958kD", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dHdD3DsquEDXckReM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:29:12"} {"_id": "hPMW8Ax5zup5kp9qp", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some File' in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "98EFRz7bNi8brGkeB", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-9 05:07:41"} {"_id": "FvrHqufmzdKNwjB8e", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \teventually all f:File | f in Trash implies always f in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gSkCbMwgkcwhp6hBZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:14:48"} {"_id": "gTGuowAsSBK7PLWDj", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n \t\n \talways all f:File | f in Trash implies always f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\n\npred prop14 {\n\t\n\talways all f:File | f in Trash and f in Protected implies f not in Protected' \n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rDqmTGno9Z7wNEcoX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:38:13"} {"_id": "XB2KEpPBkxozsG97j", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash && f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:Trash | once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SuxoPuTMM4a3aDwiQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-1 16:47:54"} {"_id": "2KQLgJXbTcgaaryzF", "cmd_i": 19, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n\talways all f : File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : File | f in Trash & Protected implies f not in Protected' \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all p : Protected | historically p in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all t : Trash | t not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p not in Protected' implies p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p : Protected | p in Protected until p in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all t : Trash | f in Trash since f not in Protected\n}\n\n\n\n\n\n", "derivationOf": "9nNSDMWQkxHYi6QYq", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-19 23:20:02"} {"_id": "288vYE48z6qfGLP6Y", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "u33xebh2Gm83RLac5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:09:15"} {"_id": "bq9gMADR7vDF7guwE", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dBuBJPqgKQCJFoxTJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:54:58"} {"_id": "f6W7a2C9GkQm2MdMP", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "G2tTwj6aLkSiNaBQ2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:27:14"} {"_id": "bgg4Brm2DHTRhkC4Q", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:File | eventually File' = File-f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8fWj5PaqFo5rLbwZj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:55:39"} {"_id": "WK9Qo2oGbrWDosq6t", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tProtected + Trash = Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DLjFCYX8mWH6ogrGL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:40:46"} {"_id": "wmYg29YhTsX9vAi3W", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wTgYgFwT6zYWxYxur", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:58:54"} {"_id": "4qRdrz9S7o8HTkukc", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "b6XnWtBTrYvKjxNGs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:33:41"} {"_id": "H4YSLohFCYukRuZxB", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always Protected & Trash not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "YGvnWscgR9yZ6rtmK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:06:07"} {"_id": "iPvfX33ZnDhtWS6oA", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xPNDNP4NLgCRvhS4F", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:48:53"} {"_id": "yu5CM9hFEBZpT5FsB", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all t:Trash | always t in Trash\n}\n\n// some file will be protected\npred prop7 {\n \teventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t always all f:File | some in f.link implies f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fywZQfK9cxcWqvS2d", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:33:28"} {"_id": "NmxKjAKbgWPbMxZPk", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash after f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QsYpdaKTqNo3Kjh9h", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:04:15"} {"_id": "6T4J5EZFPWCn3gJrw", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QQSRC7mwa3A5fxisS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:10:39"} {"_id": "BXw4XeCKcgWhyd9vL", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\talways all f:File | eventually f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways File not in Protected after File in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kQ4hHX9Cqiugvc256", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:33:28"} {"_id": "APXk6QJ8r7taDnx35", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and some File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 { \n\talways all f:File | once f in Protected && always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways all f:File | eventually f in Trash && f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Dn7oWioMHDT25xNeD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 16:46:02"} {"_id": "ngGyyCGMPMf7EGsJ5", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways some f : Protected | f not in Protected since f in Trash \n}", "derivationOf": "KZ9cfFP732Pqbjjhi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 19:23:43"} {"_id": "s4TwTCFyGsapkt2QP", "cmd_i": 17, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (\n \t(once f in Protected) and f not in Protected implies (\n \tf once in Trash\n )\n )\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Wp65XgLwyLp8wR6jx", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-1-3 11:40:49"} {"_id": "Qn2ePQuRMDA7ssBbh", "cmd_i": 16, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n eventually some f:File | f not in Trash implies f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n \t\n \talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n always all f:File | some f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n \t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tonce all f:File | f in Trash implies f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically all f:Protected | f in Protected \n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways since all f:File | f in Trash implies f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always all f:File | f in Trash implies once f in Protected \n}", "derivationOf": "WbAqMbaDyoT2sx6tJ", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-11 23:29:55"} {"_id": "RJkGKdeoKaYz3LRAr", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jgsThgwQ2EFYBcBQC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 16:03:25"} {"_id": "tCzrXqKeRbXFWvdq6", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (File.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tqxJEn8ieiQABoFHA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:05:07"} {"_id": "FboruZSTDYSoc7ubJ", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \n always (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SQz4KYtR4QMEeDXdj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:59:11"} {"_id": "hGJEGCa4EY4cRvdrh", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6uYJWWtSsAtrG4gQw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 12:30:52"} {"_id": "4R4aszq8himoMNysx", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash \n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f1,f2 : File | f1 -> f2 in link implies eventually f1 in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tFile - Protected in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}\n\n\n\n", "derivationOf": "ufcBFCNKq7G26RKSj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-19 17:06:30"} {"_id": "C2WQS7Q5isAXBacMt", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f: Protected | f in Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f: File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f: Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f: Trash | f not in File')\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "arZ5w452ntPPhdQsF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-6 11:03:03"} {"_id": "d4Qd7BAAjm9zGcXjo", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DqFehcyNTtAJAePaK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:51:18"} {"_id": "75h9om7qDeQqKSB2L", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\talways( some File)\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually ( some f:File | f' in Trash')\n}\t\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cMa6bo7GBaPyQAnsr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-9 05:17:13"} {"_id": "9A3738FRgp9mKmFuG", "cmd_i": 3, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n \n no File\n after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually File.trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ijEzP7oxbpr86HBEC", "msg": "The name \"trash\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-11-11 21:39:18"} {"_id": "Ee5SA6vhBKCiBsphS", "cmd_i": 10, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \n\teventually all f:File | f.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n always all f:File | f in Protected implies f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tall f:File | f in File after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CgPZdYTZur6BRix6s", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:29:55"} {"_id": "B9tiHx7sZbEqP9RAt", "cmd_c": true, "cmd_i": 10, "cmd_n": "prop11Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f: Protected | f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (all f: File | f not in Protected implies f in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "57TuLfdtDJDrsFDiP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:36:38"} {"_id": "2qwB42TnjQjenGbov", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "GTa99bScYipP2fKZa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:15:51"} {"_id": "hQ2Mh4MrBdHwLxaYr", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n some File eventually File not in File'\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f1,f2:File | f1->f2 in link implies eventually f1 in Trash)\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protected | f not in Trash)\n\t\n}\n\n// the protected status never changes\npred prop10 {\n\talways (Protected in Protected')\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File | f not in Protected implies f in Protected' \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always some f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xrsG4CkM2mzYi2gdz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-29 17:52:57"} {"_id": "4KgWoiehCDuZ3aqmy", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File, l.f:link | l in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ugPhuHDLrP2yaicnX", "msg": "There are 3 possible tokens that can appear here:\n, : =", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:19:11"} {"_id": "NQzpAxQWc2bepoeu5", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (File in File' and File != File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HJuDCX3Zj4dbkpd9m", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:54:23"} {"_id": "Wcwmqvi32rovdBX4Y", "cmd_i": 5, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t(always Trash) releases some (File in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BjrTNS5yNjBcEnLQd", "msg": "This expression failed to be typechecked line 46, column 3, filename=/tmp/alloy_heredoc14106430640840345833.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:58:32"} {"_id": "NArvDJfSvPsAhssag", "cmd_i": 4, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:Trash | eventually File-f\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uiaiZHzpi3iyxktnT", "msg": "This expression failed to be typechecked line 41, column 17, filename=/tmp/alloy_heredoc13418314133416041751.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:53:30"} {"_id": "HfMepiShpckb2jfCQ", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "YeW6xEuCw8guhDzW6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 19:27:07"} {"_id": "FGMafgppRAywLbTjG", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : File | f in Trash implies after always f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always (all f : Protected | always f in Protected)\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JjJiypd6hSM6xvhJq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:58:20"} {"_id": "mRTQNrsJHaKGg7dJC", "cmd_i": 7, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n\t\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \n \n \n eventually some f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n \t\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tl in link\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "McYtBG7c84xQocT7d", "msg": "The name \"l\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 11:29:28"} {"_id": "kZq4FviQ74Qp6A3Sb", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash\n no Protected\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sKkEqXPoGZd3ZfCvJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:40:31"} {"_id": "wxuJ3nWaubKfXKAEf", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\n\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (\n \tsome f: Trash | f not in Trash'\n )\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "o7MJDnzoCTDTeSyb2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-1-2 18:40:27"} {"_id": "p7qDZ3HcXxiAHw7Rx", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f in Trash and f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EmwD3aA3jwGD6LWmf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 10:55:03"} {"_id": "MmyjENfZf77Febmq6", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (some f : File | some f.link implies f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LJ8ypqphcacek58rb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:11:48"} {"_id": "KxDn26zCFTwfsmF8G", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n \teventually some Trash\n\t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f:File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways Trash in Trash'\n\t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all a,b:File | a->b in link implies eventually a in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (no Protected & Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies f in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually always all f:File | f not in Trash implies f in Trash'\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:File | f in Trash and f in Protected implies f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f:Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:Trash | f not in File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:Protected | f not in Protected' implies f in Trash \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f:Trash | f in Trash since f not in Protected\n}", "derivationOf": "HfMepiShpckb2jfCQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-8 19:27:19"} {"_id": "HiicZtw79mSjjZ5Aa", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : Trash | once f not in Trash) \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n always (all f : Protected | f in Trash implies after f not in Protected)\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n always (all f : File | f in Trash since f not in Protected)\n}", "derivationOf": "inb5Reci842tNPE9L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-4 14:43:05"} {"_id": "igWB34akhk5MEYstf", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some f : File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (all f : Trash | always f in Trash)\n\t\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always File - Protected in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually (some f : File | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n always (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \n always no Protected & Trash & Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n always no Trash & File'\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all f : Protected | f not in Protected' implies f in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "joBZfzb9c955N5E8h", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:19:56"} {"_id": "iJXGatsNy4bzk3WE6", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | no f & File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:Trash | always f in Trash\n \n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all f:File | one f.link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n\tProtected in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xTB3AfbBeGyi3hmDF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:24:26"} {"_id": "2ehqLwYdJhd3giJWk", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f:File | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fXysZJerdAE8szmqP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:35:53"} {"_id": "33HHcfRCbvH64A2es", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\teventually File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ERARJDWZ6mC9cGRfK", "msg": "This expression failed to be typechecked line 26, column 2, filename=/tmp/alloy_heredoc10352336565228720773.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:52:36"} {"_id": "Tw8uaZowbSCotoCdD", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tsome File'\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually File not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f: link.File | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (File - Protected) in Protected'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f: Trash | always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f: Trash | once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BGnWsiJhqWwaYPo7G", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-6 10:26:11"} {"_id": "RXCgYYRZd6uNwBujY", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:Trash | always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f:File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "b25MH4b8JnSYnFnkQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:38:47"} {"_id": "qi5GQJ55kNkRACEE7", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\t\n \talways (all f : Protected | f in Trash releases f in Protected)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways (all f : Protected | f in Protected until f in Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways (all f : Trash | f not in Protected since f in Trash)\n}", "derivationOf": "7QeF56MHmf2j78Kch", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 20:21:44"} {"_id": "2LkrG2yfCJX3gS3Gp", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall f : Protected | (f in Trash and f in Protected) until f not in Protected\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "oY2bKb7otHp8M8ZMF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 17:09:47"} {"_id": "xJ6SY98p37arvMdoh", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways all f:File | f in Trash implies always f in Trash\n}\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f,g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all f:File | f in Protected implies always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n \t\n\talways all f:File | f not in Protected implies f in Protected' \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \n \teventually all f:File | f in Trash implies f in Trash'\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n \n\talways all f:File | f in Trash implies once f not in Trash\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\t\n \t\n \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SMmzCc8j46DAZBeYL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-11-4 19:26:46"} {"_id": "BRrc8uxs3Qxxg6qT3", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash + Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Pa2KH2EWJDCXoDgX9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:53:52"} {"_id": "tqxJEn8ieiQABoFHA", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (some x : File | x.link in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wvvzeiBdP4ZQFJiNw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:01:41"} {"_id": "eRPq4WFCD3Fj9pSi6", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8JZWoNDSrQ3PXdeGq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 10:50:45"} {"_id": "u7xyut7dQqXnJB8xR", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (Trash in Trash')\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways ((File - Protected) in Protected')\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways (all f : File | f in Protected & Trash implies f not in Protected')\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (all f : File | eventually f in Trash)\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t always (all f : Protected | historically f in Protected)\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways (all f : Trash | after f not in File)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RepBbvYku9gFjCqoo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2019-10-31 11:40:02"} {"_id": "Y2uxDCATc5xC7GkR6", "cmd_i": 1, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n \tno Trash+Protected\n}\t\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \tno File\n \tnext some File\n \t \n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bcmbgX7ZecHAvaiEB", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int->Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:59:21"} {"_id": "8fiBDCMZ7G67WyHgR", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually (some f : File | f not in File')\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\t\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually (some f : File | eventually always f in Trash ) \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\talways all f : File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f : Protected | f in Trash implies f not in Protected'\n\t\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f : Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f : File | f in Trash implies after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | f in Trash releases f in Protected \n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all f : Protected | f in Protected until f in Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all f : File | f in Trash since f not in Protected \n}", "derivationOf": "q6GD5qbayuNB99un2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-11-1 19:04:51"} {"_id": "EPsK4nkDZ4Mb9TYoL", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File and (some File')\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LmmL5nqA2aCLad7ye", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-1-9 04:59:35"} {"_id": "betskoanKwz9ocwRN", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File\n \tafter some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File| f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all f:File | (f in Trash) implies (always f in Trash)\n \t\n}\n\n// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways all f:File| f in link.File implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways Protected = Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f not in Protected implies after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tsome f: File |always( eventually always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all f:Protected | f in Trash implies after f not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways all f:File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways all f: Protected | historically f in Protected\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\talways all f:File | f not in Trash and f in Trash' implies f not in File''\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "iv8JQ3fuWE2t7Pnp8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:37:07"} {"_id": "uiaiZHzpi3iyxktnT", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f:Trash | eventually File \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WSWoNeWZPo6gp5XG6", "msg": "This expression failed to be typechecked line 43, column 17, filename=/tmp/alloy_heredoc10386508446213848859.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:52:48"} {"_id": "5ZNvaTddSLXNkdJHZ", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tTrash = no Trash\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CCt6wniT5St2hKKFr", "msg": "There are 29 possible tokens that can appear here:\n# ( * @ Int NAME NUMBER STRING String Time ^ all disj fun iden int let lone no none one pred seq some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:51:31"} {"_id": "ypg8PkM55icjhMk2j", "cmd_i": 0, "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\n\tno Trash\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno Files and \n}\n\n// there is always some file in the system\npred prop3 {\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "d4Qd7BAAjm9zGcXjo", "msg": "There are 37 possible tokens that can appear here:\n! # ( * @ Int NAME NUMBER STRING String Time ^ after all always before disj eventually fun historically iden int let lone no none once one pred seq set some sum this univ { ~", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2019-10-31 10:52:52"} {"_id": "n4hfxuyJ9sRLD3epg", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\tno Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f : File | after f not in File)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n eventually some Protected\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n always (all f : File | some f.link implies eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always Protected in Protected' \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MbB9QGe24xafeh487", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:13:25"} {"_id": "7pjtAZvmCFmddJ26b", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\t\n\t\n \t\n\tno Trash\n \tno Protected \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n \t\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f:File | f not in File' \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\t\n\t\n\talways Trash in Trash'\n}\n\n// some file will be protected\npred prop7 {\n \teventually some f:File | f in Protected\n\t\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f, g:File | f->g in link implies eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all f:Protected | f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \talways all f:Protected | always f in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "X99RuKqgzRS6JsJBp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2019-10-31 11:42:54"}