{"_id": "zKAYz8BCDmHKgNoSx", "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\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\n\t \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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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\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": "dvhCng5AdxC8MqjFy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-13 23:28:11"} {"_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": "eyGu5DYCrnk58G2fJ", "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}\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) since 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": "niLmMRmm94Hz6ymcD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:55:11"} {"_id": "Akbr9Aq6WfBLHrvE8", "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 (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 : 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 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 : 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 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 : 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": "DnAm62D7JaqDzyy5y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:33:29"} {"_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": "7mfLQZNXHGg9Ew7Su", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\talways (some File implies (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": "TZqgFrvfbs3DGLfjD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:41:31"} {"_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": "d9nwbb2dy72jotmcv", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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 & Protected) | after no(f & 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": "WhJTqBfhbxeFECtXd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 13:51:40"} {"_id": "nHXMW2TJw2urD7ae5", "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 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 (File & 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\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\tall 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\tall f : File | eventually f in 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": "hHzt5JvkzP4sHtM7f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:33:52"} {"_id": "DbfPyGkKjq9NRcQ2Q", "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": "J7NJSQDS9FFkRrgKH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:01:57"} {"_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": "Z8FPnsXtXooWzFoh6", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\tsome File implies (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": "7mfLQZNXHGg9Ew7Su", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:41:41"} {"_id": "Jr8Tf5w27xPjsaiaa", "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\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 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": "xFoRstQ27Brjt4aBm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:31:34"} {"_id": "nuWnon2d7N7N7ZFvw", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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 (all f: File | eventually some (f.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}", "derivationOf": "ZjxPhwuLGd52cZyox", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 23:09:43"} {"_id": "sxuHvWgfPeRh9QYYy", "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 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 \talways all f: Trash | once f in Trash implies 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 always since all l: File.link | eventually l 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\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\tonce 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": "RBovdMdE7s7k2Z3xY", "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-12-1 21:46:47"} {"_id": "KneYp94xmiRajRu4E", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 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": "x2kcwmQdCGvjMiMFk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:27:08"} {"_id": "xPeTe3FdpxzspZTta", "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\talways (all f : File | f.link 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": "t45BxKKpdXbYN4Aun", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:17:06"} {"_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": "7gf7k2bb8geHcxYnd", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in 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\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": "67QrAeN7je6QhdGRN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:32:16"} {"_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": "GQbQyxLarysc73gH7", "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\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": "2js6dSN2dk4HhJmbF", "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-12-1 11:39:04"} {"_id": "sFjrHB2xfpyT9oGKd", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t 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\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Req3FTd5YnuZvGgod", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:39:04"} {"_id": "RydXa9F8Az6F8qYaM", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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(eventually some Protected & Trash) => no Protected' & 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": "7FtSWiwrD6Xj4WDWA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:33:24"} {"_id": "JzdZQCo6dtZDobo77", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-Protected implies (f' in Protected)\n \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hTLc82Ko77MixRA6w", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:38:48"} {"_id": "7CHFsz9omauHhHQvR", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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 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": "mG3XehCNSHiWT3qzy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:46:58"} {"_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": "9JYJEDR2pozh494go", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 all f: File | always f' not in Trash since f in Protected\n}\n\n// the protected status never changes\npred prop10 {\n \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always (File' = File - f since f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JxjNJ88AkMJesX6As", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:23:48"} {"_id": "j8sydttQE8apiheek", "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\tonce (no 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 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\talways (f:File&Trash | 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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "f3iK4xRBDpmJ8eHgd", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:10:14"} {"_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": "dBsGLeC8Wcb5NfYae", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link in Trash\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 after 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 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": "kb3LbAcw27hevoHAv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:23:29"} {"_id": "JDpwmghorzvAyX6m8", "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 (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 : 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 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 : 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 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": "onwuR33hCqkXNiueF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:37"} {"_id": "dpyRbAo3Yjcjb9MQs", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\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 (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 since f not in Trash\n}\n\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 after (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 \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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "t567kyqgdpx7xFHe5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:43:36"} {"_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": "FkfZpHED6HmqG3QQF", "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 + 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\talways some File\n}\n\n// some file will 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\talways (some Trash implies 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": "dzFexz4xy97vzDyEg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:58:29"} {"_id": "yKekYNe93ZeSLxDJE", "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 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 all f : File | always f in Trash since 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": "hfrikjxhe4GdwXaqe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:55:29"} {"_id": "idqLqD8wgKMqBGYHf", "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\t\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": "fBqeAJDCiCpoHsGzj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 12:59:50"} {"_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": "8Gt6kcQLo2E2vzMoG", "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 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 File & 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\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 Trash & Protected\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 + Trash | 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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "wf6tLnFsHiFrcs3rA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:28:54"} {"_id": "JXBXF59ap3sZtpP3E", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "eeNxANZMMvCLok5b4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:16:16"} {"_id": "R9zoZdwgggne2SXaf", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\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\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}\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}\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\tall f:File | f in Trash since f not in 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\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": "HBhcbeoGWqSzwHDgq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:17:18"} {"_id": "xq6y5SHniythpYLBt", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected | always (f not 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\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": "8j4EqGpfYnSdw8Y9k", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:31:37"} {"_id": "4AGK2wqRcR3fn34JC", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually 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\tFile in Trash since 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": "JfkmRrAL3DcSHDwhS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:54:38"} {"_id": "DxmjF3Z7BZXBhzEiG", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & Trash) | always (f 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": "KfyGS2TY3DMhJXZyu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:09:28"} {"_id": "BkvemgeCjLk8XcY8m", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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\tonce 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\talways all f: File | f not in Trash until 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": "MCZLGWwEo7LE47ThW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:05:11"} {"_id": "M2YobGHG7oo29MwSA", "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\tonce (no 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 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\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 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( all f:File | f in Protected implies 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\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\tall f:File | f in Trash since f not in 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\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": "GLtxrFwpNBMppweeC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:13:18"} {"_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": "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": "3toT3vdaBDapQKiJW", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "Md9ffYpujjAB9iWbx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:50:20"} {"_id": "ff3BXDAR4HWTZkrv8", "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 + 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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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": "JG67eSB43T8s9Jzn6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:58:16"} {"_id": "t7NkeKnLkff9CejEQ", "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 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:File | f in Trash implies 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\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 p:Protected | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "nGhzwyDpedFJLNrnK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:14:08"} {"_id": "ziWorWQSJfeLtrAiz", "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}\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\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\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": "p2vQ7q66miaqtXcQg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:13:27"} {"_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": "g2FgN24jtyoKenGmS", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "rtmkdxbxmNmLBzFz5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 08:40:29"} {"_id": "4YuLX6hk8nSgEq4sA", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f 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 f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "2ZbEHFdNoxdGTARiC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:21:32"} {"_id": "idMjjqhMdqbFWy3j7", "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": "DNSCkLByywNq5H8Dr", "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-11-26 10:15: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": "pR4pffvuBhke5mZD6", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 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": "PsRqqbcdyvWKppPCe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:33:00"} {"_id": "XPJNBRrpryRCDnbhD", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall p: Protected | always p not in Protected implies before 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": "psS25rRG6qo5iZGmo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:18:07"} {"_id": "swX9saL89z73xqv9s", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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 | 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "9mjZoauPBfWC78wtC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:28:47"} {"_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": "6fwqaSuG54vur3nSv", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\talways all p: Protected | eventually 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": "zcHRQ77GTZaXtNxFa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:30: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": "pGQ9zAmePHsEfDJ5W", "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 before 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": "P2xqxC6n7gCpRbXBe", "msg": "This expression failed to be typechecked line 26, column 11, filename=/tmp/alloy_heredoc1968774535712722928.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:31:36"} {"_id": "XCaqYZgcv3RJSAZS5", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\talways (all t:Trash | after 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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\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 not in Trash) releases (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": "pX2NynsXDM4CN4rsK", "msg": "The name \"trash\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 19:35:15"} {"_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": "FPXobDkgjA7GatSkh", "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 + 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\talways some File\n}\n\n// some file will 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\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": "ufrgyTpgHWARqQvDx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:57:11"} {"_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": "36YAcMwaQwFWE5EKY", "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 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\talways 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\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\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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "vh8BXeRonuZkGZu5S", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:18:16"} {"_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": "tPq2ykmdECvd99mbF", "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 | eventually no f&File)\t\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 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 p:Protected | no p&Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways (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-Protected | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "HoZRrvFeS9sRarFEQ", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 19:26:05"} {"_id": "bCF7Wp7f63Spt2w7R", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually some f : File | f in Protected\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\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 always 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": "LqocEgQ6MMgq3bkK4", "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-11-25 20:11:26"} {"_id": "YETLqrSiCqikF4Xmm", "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 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\talways no Trash & Protected\n}\n\n// the protected status never changes\npred prop10 {\n\tall f : File | f in Protected since 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": "kS9KmXCCffxTWLSHA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:01:58"} {"_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": "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": "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": "pf2nwc2BPhy4PB9rY", "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\tonce(no 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\n}\n\n// 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": "FeeQyeBi9Wv9dQWsn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:49:35"} {"_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": "xX6oJnsAJvWSt2Xw5", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f 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 | f not in Trash until f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "ZeSAzM38CHxhyaZNr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:23:32"} {"_id": "9HZAeqnh5fj7h3tXB", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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\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\tall f:File | f in Trash since f not in 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\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": "89oFCKeMGDprfRMzr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:25:54"} {"_id": "KCkTLxtsweGCcEeB6", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 | always (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": "zt4DjjPTMRdFLgLhA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:25:01"} {"_id": "DcxZ53qrwvwqDMWyT", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\teventually (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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "njkfEPCHSNtLv9J8J", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 09:28:24"} {"_id": "MidrPz7QgwRLwuWtT", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "W8PSZNmKABNuZFypb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:19:48"} {"_id": "jLcNJwNkEhkDreuCT", "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\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 f2.File| f2 in f.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": "2rx5ZBt9vzEFahDvi", "msg": "There are 8 possible tokens that can appear here:\nNAME disj exh part private seq this var", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-12 23:51:51"} {"_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": "5iPFgERviFyuhsqok", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f:File | f in File implies f not 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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "sZRKcWZKxw6cZJKFt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:18:09"} {"_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": "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": "B4DajJocJnXADausM", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\tall 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\talways (all f:File | f in Protected implies 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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "CxtWguApz2FZXvyAM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:12:50"} {"_id": "q5kvsEMjmqKvrPS8P", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always 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": "HJWR575PocFZ5jvXZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:37:52"} {"_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": "kJoSYBxquqMT28dXr", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "SpJynFtRXWFTHSpCs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:18:45"} {"_id": "6uwQYDkt7oHEv4egq", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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 Protected in File-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": "FbKKT7nYbguMLSb2Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:27:31"} {"_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": "7XEBd2LZum2tez3c5", "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 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\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\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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "PWHkgbHTrrY3ewTZt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-4 20:14:08"} {"_id": "qHJTdn5PXJuhDYHCz", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all t:Trash | after 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\tall f:File | 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": "H5hmXBxDNXR7rusRd", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 18:08:07"} {"_id": "pnLYeJ4W8RDdcXut7", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 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": "swc63YWFCeoJd5Ysc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:24:49"} {"_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": "gd2kYCMSdTcA2g4jd", "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 no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n after some f : 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": "utfK3deDyvYnPtKaZ", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:38:39"} {"_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": "YFXNaM9XzJK6LTh3L", "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 historically (no Trash and no Protected)\n\t\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 eventually (some 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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "RajgWK6HmY5WXdNv6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 22:28:51"} {"_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": "BhXXHiYhAyDeF2gvv", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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: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": "vJJyJakom6cfECyKo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:50:55"} {"_id": "cAp9q6yK5446djBYG", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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": "nsscKreaNJjm2zscG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 21:40:55"} {"_id": "pDwteidmBNDjvaR5s", "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 | f not 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 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 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "j8s3HjDqfAJe8bepz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:47:52"} {"_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": "JLepyjWduGNuTWECz", "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 + 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\talways some File\n}\n\n// some file will 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\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": "hHfiTRnbsgTEx4FWx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:55:30"} {"_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": "YCazuStdqbLE36irm", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after 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}", "derivationOf": "suFggvjHudbCJnxX7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:04:03"} {"_id": "ToJbWFn2cYSRJMy3m", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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": "DtDgxHokGsszfynuo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:48:49"} {"_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": "z6psuaoGbMMe8csKu", "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\teventually (some f : File | f not 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 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 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8Kdb6vDXNEXWAk4NS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:46:55"} {"_id": "B4T8ci8nEiikCCCDZ", "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 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 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: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: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": "gWuZgq5hCQJr5Kgch", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:24:42"} {"_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": "kERkgkwtMnAFTtJM4", "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": "5J3QJSHiyNHneWuPJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 17:03:49"} {"_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": "yEs6q37SaXpqzsvKY", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t 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": "S42Y4LQZTjMtjLZwf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:55:25"} {"_id": "fzeQGshrs2oWf9hnN", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in 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 Protected&Trash implies after (f 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\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": "GFxzFCGzj3tQTTbFP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:35:12"} {"_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": "dYYgedd3Qmwbgi6g2", "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 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 \tafter 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}\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": "Evktc3iKvau8ZNihy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:26:14"} {"_id": "pvFa7vWHZ8aEmb9xT", "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\npred prop2 {\n\thistorically no 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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (some Trash implies (always Trash 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": "LtcgN6fKPna8AvwoL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:01:32"} {"_id": "w4hpSPqjFit5DuRLC", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "4TfjBwN9bcMPDfHT3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:16:00"} {"_id": "6EF32pdtZuY6wmHF4", "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 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 File & Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall p : File | p in Trash since p in Trash\n}\n\n// some file will be 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 Trash & Protected\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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "24BcSkpk4B9o5YosZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:26:36"} {"_id": "oCk2Yj4jF6fmnFo7y", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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 (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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "cmm2LDEkT5vhDzARJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:52:08"} {"_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": "gkNsqtTiwmCq6rE9m", "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// 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": "zeSyP7pEphnYFzQJt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 13:26:46"} {"_id": "wfMYuEqyrSYaPYkYL", "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\tsome f:Trash eventually no Trash & f\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": "Kr5Kcj2zKEbbKpNrf", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 17:07:26"} {"_id": "DoBoAfBQGrdtfJ97t", "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\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\talways no Protected & Trash \n}\n\n// the protected 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 - Protected | always (next 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": "cz5hLWwrW7upRgKW5", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 15:18:12"} {"_id": "cFHuENpZpLj5oSvrJ", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link in Trash\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 Trash'=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": "FiNKbTyH4XSYQ8pN2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:21:09"} {"_id": "cEin93iHnMqZ4YtYP", "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 | eventually no f&File)\t\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 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 p:Protected | no p&Trash)\n}\n\n// the protected 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 | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\teventually (all f:Protected | eventually f not in Protected and 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": "g5farDX3Q82xqBqX8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:31:12"} {"_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": "CHnaA626hiMG67FE8", "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\t\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 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 p:Protected | no p&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-Protected | 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| 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: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\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 (some f:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "W6jd5J9obhfBmRG8w", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:20:51"} {"_id": "xpu2S2AbsNCfkobo3", "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 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 \talways all f: Trash | once f in Trash implies 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 always all l: File.link | eventually l in Trash since l in File.link\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\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\tonce 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": "sxuHvWgfPeRh9QYYy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:47:21"} {"_id": "iRPM5GbewAkrc3WPL", "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}\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\n\t \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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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\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": "PqNfGx7DiB7QkLP4j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:27:58"} {"_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": "wsQ4yREHHSQZP47WM", "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 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 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": "ApBdt4WwqLga8RNyz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-27 23:51:23"} {"_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": "GmZnsPBoCBKdZN4fc", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically 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": "iLpGKR5svxx5pwhWL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:31:10"} {"_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": "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": "bmeca3ubTLA93Fxhy", "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 (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 : 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 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 : 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 implies 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": "TFZ77mFwmAhyTzAsG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:29:19"} {"_id": "c6snpZKiJz7BxE98B", "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 no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File implies File not in Trash\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": "MgMGFtHWZhu6yojzJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-5 01:43:33"} {"_id": "ei3bkG4ybrC7myJ2P", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: File | always 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 after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "2SvjsGJBJaacFMw39", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:36:12"} {"_id": "nGhzwyDpedFJLNrnK", "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\talways (some 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\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 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 p:Protected | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "PiScAnPFphogrC5Rt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:13:32"} {"_id": "ocfXuzZpwmn6f4uFo", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome 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": "ZophaNCM6Bc3pQqtv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:37:55"} {"_id": "E6fcZ6H7Go8n7sEJ7", "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 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 some f : File | always f in Trash since eventually 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": "iyyBmrarRSsXHm32z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:57:11"} {"_id": "tPgHFAzPMzZGpz7uc", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually 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\talways File in Trash since 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": "wMuQiqnKJru8rqRJ3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:52:39"} {"_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": "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": "JitedxQKrywDtohF4", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected | always (f in Trash' => always (f not 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": "QetiysCKhfiCCdyWf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:36:37"} {"_id": "QgCPHQ4ANW87dveRr", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "hTkXAXf6WKBpcF6Ze", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:46:15"} {"_id": "aAJW9ycaoxwMR2iF7", "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 Trash\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": "aYGAde4XboEWAyAqB", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 16:19:44"} {"_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": "BTJstCSFzkYQBsQx6", "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 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:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "29YEArmvK27JPiTia", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:07:38"} {"_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": "NmDTjD3bd3R9i4GFJ", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (eventually f in Trash implies always 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": "De3HRkp2rWBFcGX96", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:01:28"} {"_id": "xkuuzm3We6L5nhycr", "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": "2020-5-28 05:01:55"} {"_id": "sj9ssDoQmJTDjizBS", "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 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": "fnvWxXHh2HHj3iLJY", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:08:50"} {"_id": "Jj5Yec2octjdJWJgR", "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 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 \talways all f: Trash | once f in Trash implies 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 l: File.link | always l 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\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\tonce 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": "5KDgyuKxKt9bqsBbA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:54:06"} {"_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": "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": "ep7cKBu6Kk7wkZ9Lx", "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 : File | f in Trash implies 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\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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pDwteidmBNDjvaR5s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:48:03"} {"_id": "pvTkz5hzxwi7xSowv", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually some f : 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": "iwBBbjYm4WBZgeBpm", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 22:51:20"} {"_id": "fbZpJtRYmcT3YF3xx", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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 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": "DTnBTe8tsnGqYcDwM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:24:33"} {"_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": "WYoWgPbTe4kZhLCDx", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: File | always (eventually f in Protected implies always f in 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 after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "K7s3yzmhQGpXacQvp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:39:35"} {"_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": "qCP5Z52W7HPyPhM66", "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\tbefore no 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": "9YjrCv4G59r5iMJ9Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 09:07:59"} {"_id": "49vCECce4sDJijnBg", "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\tonce(no 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 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\t 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": "uetRtQSR6poox3a3Q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:52:54"} {"_id": "MBrdfx5Ng9TchrKhe", "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\tonce(no Trash and no Protected) \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tsome File since once 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": "CqgpW2sq8YdFteibS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:38:54"} {"_id": "aZGuGgk6c5DfWduCa", "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 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 (File & 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\talways no Protected & Trash\n}\n\n// the protected 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 => 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": "Rx4NXEuY5hNiei6LL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:20:36"} {"_id": "wKcB46afmk8gt4D62", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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 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 (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 | 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 always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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&Protected | 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\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": "kJ443Gq95y3pK8w7J", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 01:03:52"} {"_id": "R5ePyZKg48xt7vYCE", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\n}\n\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' | always (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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XD4EAsvcL5WkAF3yY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:46:07"} {"_id": "Kdv8TM5oMMwoxSHFv", "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\t\n \tno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File implies eventually 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": "uurAvii4uiHftr3v4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 12:57:01"} {"_id": "XmdaWDccWGNkjQGNn", "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 + 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 | eventually 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 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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after 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}", "derivationOf": "rf3neS23QdTKep32t", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:03:20"} {"_id": "KZi58pW9nzyz3c5Pb", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |eventually (before 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": "NBXMS7egShxsknRqL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:12:18"} {"_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": "hPDkzHubTxZc8dZ5e", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | eventually f in Trash after always some (f& 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": "6cp94qow67CDQtLB2", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 19:10:15"} {"_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": "jf6gEg3FCjriY8Tfi", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 some f : File | eventually ( 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 some f : File | eventually f in 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": "TsPre9wDtADRb3a2j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:23:31"} {"_id": "g2oAfDHxAct9xvc2f", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\nall f1,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 {\nalways all f : File | f in Protected implies f in Protected'\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DdREojs3jcKtbeEAW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 23:00:52"} {"_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": "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": "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": "b9LA9vZJKsn6P88XK", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (eventually 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": "pu7RWrgLDuTTDcCax", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:05:51"} {"_id": "PHXXEGFsJ3KLEvNeC", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(after 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": "dbABKk8MBBvF3eCnG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:11:55"} {"_id": "kyyYsuPrvXaJCYZGN", "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 + 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 no Trash 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": "4Czr6axZ4NF2AZf3K", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:33:18"} {"_id": "8EppbBKw3fJKaABvF", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\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": "tfD2mKyQHExaPAXvN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:03:37"} {"_id": "CtmMJ4z3BfSL27uRN", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 (File.link + 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": "qBsDZkZpitsGJ4e5c", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:27:18"} {"_id": "yMFCtCTSqTS3K9WNi", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 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:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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 Trash releases f in Protected and 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\talways (all f:Protected | f in Trash releases f in Protected)\n}", "derivationOf": "Z6M5XzHNXysbxneyv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 17:28:56"} {"_id": "s68BAYjaKmyD94pnB", "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 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\talways no Trash & Protected\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\tall 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\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": "XMozpKHKDYoz9gqgi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-28 00:13:34"} {"_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": "WTbuEEQKuadPtCMG6", "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 Protected\n \tno Trash\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\tall f:File | always f in Trash implies always f 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": "tXnLk9ctQtFZFZMvF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:36:04"} {"_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": "bcN52j3kBpAWeh6i8", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\t(some 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": "MmqLuAEbRhR6eaKwJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:07:54"} {"_id": "6RXgXj5FCn5rdv4r9", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (eventually 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": "bG7DdcDXycuGkjZCx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:06:12"} {"_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": "jCTTFzpqyL48XBn2s", "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 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\talways no Trash & Protected\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\tall 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\tall f : Protected & Trash | 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": "Ssvw8SScRHbTW2M46", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:07:16"} {"_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": "pTXL6Dsz2YHLe2zoa", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected | always (f in Trash' => f not in Protected' or f in Trash => f not 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": "rCR2p5rXWLJYaSgMA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:38:24"} {"_id": "Gxkauc7ofvA5pEymX", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tall 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": "feZomy2cKfwAt8M6C", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:06:44"} {"_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": "ZeYHZWe7JmwegPLnH", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\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\talways (all f:File | f in Protected implies 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\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": "xJctaLgGbxory2p3X", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 13:27:04"} {"_id": "sT2YusaiNXXiZ3tt8", "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}\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\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\tall f: File | always(once f in Protected implies 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": "8JtLSPGE3Rtp3sENY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:24:47"} {"_id": "xDHmjv82qNBN4X6rQ", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after 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}", "derivationOf": "GCnzfJaXdmt7BGcNo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:01:53"} {"_id": "TvHhAoQ8ze6AdZ5hX", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 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": "SR4THKErPirKcqEgc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:57:34"} {"_id": "xhMDxS5BqK8XtWiMM", "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\tonce (no 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\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gD4u8me4KEzK4H47H", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 22:47:55"} {"_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": "XaDyy7hB38L6aCM9w", "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 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 (File & 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\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\tall 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\tall f : File | eventually f in 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": "KnaYfCAPCgDXwZdFt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:34:21"} {"_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": "YYFm9cpp5peBh2ouu", "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}\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\talways some f:File | f\n}\n\n// 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": "NAAhNjAmL2wFucpb9", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-12 23:37:15"} {"_id": "2vhav3cxsiej2bKoN", "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\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 (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 : 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 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 : 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 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": "J4PmYmXbxwxLANBdv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:23"} {"_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": "qoPxFmAxCp4tWzdw2", "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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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": "MXvXeEMkMCCwCTsYb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:26:23"} {"_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": "9NgtSFjMwG85udFir", "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 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 (File & 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\talways no Protected & Trash\n}\n\n// the protected 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 - 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\tsome f : File | eventually f in 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": "mKy5z8gqSsy3K7eS9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:29:08"} {"_id": "iJbvSLNzqqKx7MMMQ", "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\thistorically no 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 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": "N6th5a9QRNQja2bq6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:43:37"} {"_id": "KeqFJMEenrvkaWFvf", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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\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": "bCMk8kxyjm2QLspRg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 13:47:03"} {"_id": "GToptnowxiKXS6mgj", "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\n \tsome 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 \tsome f: File | f not in Protected implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash since 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": "gLCf8g2akCNmSHf7Z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:03:51"} {"_id": "6fTeiWppCJDPLKw5k", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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": "bDBCiQgWapkkcgmxN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 20:03:28"} {"_id": "5ZDCvrepHpvR95viC", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "dxMro6FMEs6i5dMcu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:07:21"} {"_id": "5vGqACq5HjZGvfjTD", "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\n \tsome 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 \tsome f: File | f not in Protected implies eventually f in Trash\n\n}\n\n\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\talways File in Trash since 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": "x7BFd8HTPFjAtR9pZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:48:02"} {"_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": "Mb9z3CDpc8KbC5sqk", "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\tonce(no 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 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\t always (all f:Trash | 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\t\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": "v3vXGQ6FCKkxE4o4y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:58:06"} {"_id": "cni8pEGjBnFaFrGWz", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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 historically f in Protected\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": "Wq7eyNTZgrCSnFGgB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:52:46"} {"_id": "2f29sgfe2uzp45uG4", "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 Files and after some Files\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": "zQCeScLepMNeFWKeB", "msg": "The name \"Files\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 16:40:49"} {"_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": "Yr98SmEQTbgEtb3FJ", "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-Protected | 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 | always (f in Trash implies 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 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": "eF34nc6ujthEfFoaS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 16:28:31"} {"_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": "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": "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": "g3pdisnaMXvFwwdJH", "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": "EMz6E2zDEyB6JkAdX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 16:39:49"} {"_id": "F4P7B9ALZD2fD492k", "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 + 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 | eventually 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 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 always no Protected & Trash funciona, nao devia\n always all p: Protected | always p not in Trash devia funcionar\n}\n \n the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n \n every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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\u00e3o percebo\n always all f : File | f in Trash releases f in Trash\n}\n \n if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in Trash nao precisa do always antes?\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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "TaMMv2pd4iZY5GCFM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:48:00"} {"_id": "sGpfzDwswMukrqTwM", "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 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\tall f : File | f in File until f not 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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "huzh8jf7rP7hg7LND", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:12:58"} {"_id": "sMFYnbuTiyEtf8PY5", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-Protected | 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\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&Protected | 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 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:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "WBGmGhPQXkg3EHivu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:04:51"} {"_id": "TTFxmGy2LFtHmcJEA", "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 (File & Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some ((File-Protected) & 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": "SZWDrDPqEt7DSbfnQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:14:05"} {"_id": "4ZRouggouMCwutp7q", "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 no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File implies File not in Trash\n\n}\n\n// there is always some file in the system\npred prop3 {\n 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": "c6snpZKiJz7BxE98B", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-5 01:43:49"} {"_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": "fCg8cDjn7j3R7k7f4", "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}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f: File | historically f in Trash implies 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": "dTRj8PZQWedg4GGmR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:05:14"} {"_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": "LXQ6jMxX7XHAiekEr", "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\tonce (no 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 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\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\teventually (all l:link | 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}\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\tall f:File | f in Trash since f not in 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\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": "Ho4eJMZppm87NvQjC", "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-11-26 11:11:39"} {"_id": "jhfGyJepaTyZ99cDT", "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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually (all f:File| f+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": "qoPxFmAxCp4tWzdw2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:27:15"} {"_id": "4WHTmheTjaquRncgK", "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 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\talways no Trash & Protected\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 - 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": "YETLqrSiCqikF4Xmm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:03:10"} {"_id": "vDbSP3BQuywDgx4t8", "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 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\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' = 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\t\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 always no Protected & Trash & 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 always no File' & File & 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\t\n \talways (Protected' = Protected until Protected 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": "aNgrLG3ZdBKPwYuMF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:07:31"} {"_id": "tfnaLDQJkLYfeZQnT", "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 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\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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "CZdvJjoAKf7bMskv8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 23:48:30"} {"_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": "DDrPjp4vvCrBcjdxb", "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\t\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\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": "idqLqD8wgKMqBGYHf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:01:18"} {"_id": "zgSgegLAsP7adpdqY", "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\n \tsome 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 \tsome f: File | f not in Protected eventually f in Trash\n\n}\n\n\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\talways File in Trash since 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": "kMdmENNXhPYswkJTc", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 18:53:55"} {"_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": "JW22X9yEG6Rk5JMHQ", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t all f:File | once 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\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": "yPX6waxLe2efSy7xt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:02:02"} {"_id": "vwwts79qDB72fBoMm", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always (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": "GGKy96Je8JHJfxmax", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:50:41"} {"_id": "9Y3GZBxXcPZfTxzA7", "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}\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\talways some f:File | f in Trash + Protected\n}\n\n// 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": "QgZEd8YMmAoPCFhtL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-12 23:35:46"} {"_id": "BPkrAnb3R7snphq22", "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": "XSxiJnSw4vajZmfMs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:18:21"} {"_id": "TJyP8oLyamikvj6Sm", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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.*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": "ScYY4xEoMbh3oZQ8a", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:49:03"} {"_id": "rf3neS23QdTKep32t", "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 + 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 always all 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 always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after 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}", "derivationOf": "xDHmjv82qNBN4X6rQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:02:49"} {"_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": "8QDd7ofd8zwm595eY", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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 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": "RkNcvzWa43vtQz688", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:30:35"} {"_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": "sGMXbF7R3CGJvK29f", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 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": "kTjEE4A8a42uMG7gh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:57:46"} {"_id": "E3NFeSYg32yrF6eBu", "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\npred prop2 {\n\t\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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PKDx3ebpLN49TsfDH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 17:57:18"} {"_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": "F9t8rsgiHbW44ijSS", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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": "Rmf2mXxjtEtwQJACT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:02:59"} {"_id": "XgBPeDnziab7qpvvF", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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 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": "uFrPoak73EDBAjrGq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:51:07"} {"_id": "4Pmes9cbJCL6coFit", "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\n \tsome 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 \tsome f: File | (once f not in Protected) implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\tsome f: File | f in File and 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": "z3DKp46vnJid2FDua", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:08:37"} {"_id": "ZA4XCBD3yxP9xNLRK", "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": "uk7eDyc9M8QRvaFWm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:42:34"} {"_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": "AT8sX7EyBNujPoji5", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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-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\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": "7jDhqviNxNYED2uHi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:44:24"} {"_id": "ZmFER5FDLgzK4h4Be", "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}\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\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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-7-1 10:12:04"} {"_id": "secQcwLbFqj4xrCat", "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\t\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 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 p:Protected | no p&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-Protected | 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| 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: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\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 (some f:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "CHnaA626hiMG67FE8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:21:26"} {"_id": "pcQMYo6AhMtzKmpyA", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link 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: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": "KoWCSvtjSh9QA9DQx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:19:39"} {"_id": "ZYD59xDQe5rfZzrdw", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at 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\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// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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\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": "2TjykNmDQHPZQfQg4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:53:12"} {"_id": "hygKcBB4aivg4fFqZ", "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 historically(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 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": "JCRsPuhQPucq53r95", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 11:49:59"} {"_id": "u6BjEJdCMA4h6huTM", "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 + 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 | eventually 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 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 always no Protected & Trash funciona, nao devia\n always all p: Protected | always p not in Trash devia funcionar\n}\n \n the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n \n every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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\u00e3o percebo\n always all f : File | f not in Trash releases f in Trash\n}\n \n if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in Trash nao precisa do always antes?\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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "9D2oWmuvjEuWHvZzP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:48:56"} {"_id": "yeS8ajB9umieNSFxR", "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\talways (eventually some 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\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 | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "ToheFspN6mz4pNtGL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:08:32"} {"_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": "8ppYw9zRQhzJHa9nu", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (some Trash implies (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\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 all p : Protected | p in Protected'\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "msnvZy9aDw652h9GC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:38:36"} {"_id": "buWuMowkmHK3gXPSp", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n 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 always all f:File | (f in Protected & 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 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 always all f:File| f in Protected implies 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 always all f:Trash | f not in File'\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n all p:Protected | p not in Protected' implies p in Trash'\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QdGJH4Sfug3GT7Y9X", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:26:48"} {"_id": "4L4uJLDnsLTYP6keC", "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\tall p: Protected | p'=p\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\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-11-26 11:54:17"} {"_id": "vqNQs258RTS8dxWop", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:02:42"} {"_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": "a2DrBqXAbhx2KkGRs", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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, f2 : File, l : (f1->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": "Cp2NfxNMiuEM35nud", "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": "2021-1-13 13:12:03"} {"_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": "AKfcWuM6J728qKfR9", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File implies after always some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LmTFfswgGG437yaDL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:19:49"} {"_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": "fHncqFWcMCgTYWHGy", "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\tonce (no 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 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": "mbHnBHaFhC8xiFYjS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 22:48:36"} {"_id": "Zedxq2kBRWKM9ogoe", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 (Trash and 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": "FHhxZqLipmiNz7EbQ", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 22:35:41"} {"_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": "Tp7fcBkBg2kMhYmvj", "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 + 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 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": "T8k9W3JZH5TXvPk2P", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:32:40"} {"_id": "hvtv79LrjqPKpekgQ", "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 | eventually no f&File)\t\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 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 p:Protected | no p&Trash)\n}\n\n// the protected 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 | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "agYu36z57LqvntiQe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:29:50"} {"_id": "5J3QJSHiyNHneWuPJ", "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": "EmGhnmwBQDBBbFNCT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 17:03:32"} {"_id": "KF2im5k3w6oeeYX2j", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | once f in Trash implies always 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": "9tc8KJS3fvXe2h7nJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:56:17"} {"_id": "6Cxa2SSbeJ4euaYvw", "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": "Pn9GvdbcYddrJWJRG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 11:39:20"} {"_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": "62rNB5mSMK2hnA27N", "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\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\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": "d95FTPaYmvChpJYGW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:41:57"} {"_id": "smDWLsEKXt7QqGbig", "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\n}\n\n// some file will be 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\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n\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\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": "taGDgPsQvSGxrgzy9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 15:25:55"} {"_id": "fzAjgyhSC8pncgwqm", "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\tonce(no 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 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": "pkNJSw8fkdoCMbRn4", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-14 00:50:35"} {"_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": "FusQkv4RvGtfpDE9D", "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": "XtHx2Bhbyt74pr5JA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-19 19:51:08"} {"_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": "ZkALxp7fYH2JrqNMq", "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// initially there are no files, but some are immediately created\npred prop2 {\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": "7E7Pskx2A8guYGh7N", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:47:35"} {"_id": "f3L9TKL8x95voDdbr", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 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\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": "Qt6csXQD7cT5nkuTY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:35:45"} {"_id": "tDXHCpLTkG5Fy2q2F", "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 historically (no Trash and no Protected)\n\t\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 eventually (some 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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no (Protected & Trash) \n}\n\n// the protected 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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\tall 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\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 no (f & Protected) )\n}", "derivationOf": "xS37R5LMwQuriZdGT", "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-11-25 22:36:53"} {"_id": "8TuJdTExtZwZecwXf", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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": "EZ32zsLGzznPTX3N6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:26:17"} {"_id": "WZYvRsKFmZBuzyKbS", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t all f : File | f in Protected implies (before 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\n}", "derivationOf": "aBg7pDvBCGpDMJbHT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:50:45"} {"_id": "JRignmCgF9RBGdxJx", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( 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:Protected | always f in Protected)\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\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 since f not in Trash\n}\n\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 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:File | 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\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": "bpSQKh77o5ijdWNJk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:49:54"} {"_id": "rfLMgHCsdWboTPXpf", "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 no (Trash & Protected)\n \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": "BHEafam9km9hc3HbM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-9 03:13:52"} {"_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": "rCJdhz7EAsDTFKy6x", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 (Trash 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": "vb4K3PzniDsBdbzkJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:50:43"} {"_id": "kFaRJka5KJ3SYRAj5", "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 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 \talways all f: Trash | once f in Trash implies 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\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// 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 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\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 f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "WNYsH6CnqeocXFYYY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:23:21"} {"_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": "Nx5cq8D8njQ4vtZ5J", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t all f:File| eventually 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": "kZweX6LFiGTLQMhH2", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:41:01"} {"_id": "JPryQusRdw8u6dNKz", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\talways (all t:Trash | after 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\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 (Protected 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eFLPT2uZmCj9kcC8L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 13:26:37"} {"_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": "QHrPvq32KXJ89NsjM", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always f in Trash implies always after 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": "8m8o2yZxSajt2Qn5L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:55:00"} {"_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": "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": "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": "8BpittN5JjAJGm8pZ", "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 f : File | File' = File - f\n}\n\n// some file will eventually 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 \tall f : File | always (f in Trash implies 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 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": "nHcB37qGMq2tQjL9Y", "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-11-24 16:41:32"} {"_id": "JTrmZgBvyZ6SQxr9k", "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 (File' in File and 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": "nw33knyev7kSkPHtj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:02:16"} {"_id": "JKxJ2aPJztZh6sFpA", "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 \tFile' = File + 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": "BCvpsMkaCFMg7E5yh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:14:20"} {"_id": "SEy7MtsmFPFgHjnLW", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all f: File | eventually f in Trash and f in Trash releases f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "hpamFvvjWvcFdLbyH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:17:51"} {"_id": "Aa4Q7YLwoig5MKrCB", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all f: File | eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "EKxeibsivCiB9s5qT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:26:42"} {"_id": "LHm23wzFsGByvHB8H", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at 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\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// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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\tall f:File | 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": "ZYD59xDQe5rfZzrdw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:53:47"} {"_id": "ggNDTsgGfpet9HqvY", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig Trash in File {}\nvar sig Protected 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\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 | eventually f 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 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 p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \talways all f: Protected | after 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 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}", "derivationOf": "NdNtvRAx8r85Fivh8", "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": 349.4140625, "y": 238.79999999999998}, "File1": {"x": 465.8854166666667, "y": 79.6}, "File2": {"x": 349.4140625, "y": 318.4}, "RejectedByOracle": {"x": 232.94270833333331, "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-11-24 01:32:37"} {"_id": "BEzpHrKzL6X7jLhSs", "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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n always some f : Trash | f in Trash releases f 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 | eventually f in Trash implies always f 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 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": "Aa3SpbFrhNjWKYECh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:39:58"} {"_id": "zcHRQ77GTZaXtNxFa", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall p: Protected | always p not in Protected implies before 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": "Ef3JBK358GJ5GpdTj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:30:11"} {"_id": "uvimJaTSJG6dqHoef", "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 no Trash+Protected\n \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \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": "PJg8wquZrZtpn96iY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-9 13:38:15"} {"_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": "7LrK2TJZ4koLP6czA", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |(always File' = File - f since eventually f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RSyiBwb4BDEJLZ6Xo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:16:13"} {"_id": "dMP5dtak8vaqPnGys", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\tall f:File&Protected | always after f in Protected\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\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 since f not in Trash\n}\n\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 after (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 \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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RzAXJpxhsSchanvMy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:40:02"} {"_id": "NYAHHFeYWQk5xL9eA", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually 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\tall File in Trash since 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": "FuruMzFm4Q8KtzAiS", "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": "2020-11-26 11:53:13"} {"_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": "zwK5C4coo8bvmgkHJ", "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 until 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": "RrTtrkF9nYHAjSerq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 17:55:21"} {"_id": "FbKKT7nYbguMLSb2Y", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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 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": "L5BQjBAc4e7QGjjhk", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-8 03:26:52"} {"_id": "BwPhyrd6F3Fr7zhGc", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | always f in Trash since some (f& 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": "ipycL6HZaF6Zhf2GH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:27:43"} {"_id": "Rp7cDcE3eswekFi5e", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always 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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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\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 f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "sfhBzMh3c3668L5xH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:29:39"} {"_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": "JCeh4oWCzDAmkqW4K", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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 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": "xEh8iSy9rMk7LrZrM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:07:06"} {"_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": "L4i3Nn9oCmdLRzRnj", "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\n \tsome 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 \teventually some File and File not in Protected implies File 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": "MfvcoqdHcg6PRZwZt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:42:51"} {"_id": "2zj8uL52gvFbQSKM4", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all f: File | eventually f in Trash releases f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "RkvoggWsJEhwBzG9f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:15:54"} {"_id": "jbhkJtr84gPiQdPqD", "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 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\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' = 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\t\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 : Protected & Trash | 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 File' = File - (File & 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": "eEBMRPZZA3LskGFXg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:45:13"} {"_id": "2u3JjLAqANNhYCr6j", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\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\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}\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}\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\tall f:File | f in Trash since f not in 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\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": "HBhcbeoGWqSzwHDgq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:17:18"} {"_id": "AoJTb9EX4z33xB3BW", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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\talways (all f:Trash | f in Trash since f not in Protected)\n}", "derivationOf": "NcH8kLYSKqYN5efyx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:03:03"} {"_id": "6hZFM4q54Gz6AtgZA", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 (Trash-Trash' 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": "rCJdhz7EAsDTFKy6x", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:51:05"} {"_id": "cyYZW9fKpN6anvLkF", "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}\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 always( 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 | eventualy 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": "hgJAPmzJRsPsCS49J", "msg": "The name \"eventualy\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 18:03:37"} {"_id": "hXqpmebzzd2k5gNvX", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually 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\tonce 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": "728qmKmA9icPZ2EJj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:48:28"} {"_id": "qvqhWTeAMposBM75p", "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\n \tsome 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 \tsome f: File | since f not in Protected and eventually always f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash since 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": "Xq69gGZj3JSQr2zbq", "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-11-26 19:01:04"} {"_id": "KoWCSvtjSh9QA9DQx", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link 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 | 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": "yBtbCE29H3MAu8Emi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:19:27"} {"_id": "4AyTzSm6YpAT8yZ5F", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "d5ex9kuAJwS4evdR2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:46:36"} {"_id": "DWfZP8MSZNoFrbMBb", "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 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 (File & 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 : 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": "BPExuyzewcD787GjR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:02:42"} {"_id": "nWK7dcPT6SSTfdBDX", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\talways (all t:Trash | after 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\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\tall 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": "ZDFp7YNeLNjshoica", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 13:17:54"} {"_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": "bMxruAGQymsP6v9qb", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 some f : File | implies eventually 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": "imT9XYxpf6EuCPTMx", "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-11-25 19:17:48"} {"_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": "q7cPdyEjz4EZZQxTD", "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 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\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' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f : File - Protected | f in Trash'\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fKkhp2DDnaeaZB6E8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:23:33"} {"_id": "kxNH2PDDuBf9NHB8f", "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 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\talways no Trash & Protected\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 - Protected + Trash 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": "4WHTmheTjaquRncgK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:03:23"} {"_id": "dbumtpdX7a6mxED48", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \talways all f: Protected | after 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 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}", "derivationOf": "HSqQPZK6bF5fL8FJ4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:01:52"} {"_id": "zNSABoDbJq7xo62vx", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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\t\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\tall f : Protected | always (f not in Trash) 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": "YMLbxKEL3YidMaC9E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:56:54"} {"_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": "oivT9pBECZFsYCGWq", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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\t\n \teventually some f:File | f in Trash releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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\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\talways all p:Protected | p in File - Protected iff after 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": "dNKjZrCiAiQK56wu3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 04:17:19"} {"_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": "TWML4mJ9z4yxMutiw", "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 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 always all f : Trash | eventually f in Trash implies always f 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 all f : Protected | always f not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all f : Protected | eventually 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 always (f : Trash | f in Trash since f not in Protected)\n}", "derivationOf": "e4MKeSR3t7myv7qXX", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 22:00:38"} {"_id": "CpCCNcyeL5DXeRRkG", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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\t\n \teventually some f:File | f in Trash releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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\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\tall p:Protected | p in File - 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": "iW6ZLyKsjLmPuoQxW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 04:15:11"} {"_id": "NQxYuhoPGBLb6i7uC", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: File | always f in Protected since 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "ygQteQnkQKTfpnat3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:36:57"} {"_id": "vb4K3PzniDsBdbzkJ", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 Trash 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": "3toT3vdaBDapQKiJW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:50:29"} {"_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": "o7ZdtoWGvFWzFSmCQ", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all t:Trash | after 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\tall 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": "3sTwM7XRFvcEa34QS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:01:56"} {"_id": "ZFZZMaTYaQ2hMsu8u", "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": "42GsEmaBnxZZBaETL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-9 18:14:10"} {"_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": "BLBwpBaypXNqX4znW", "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 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 \talways all f: Trash | once f in Trash implies 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 eventually always all l: File.link | l 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": "FaAQB5sDaTWwrKgxi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:36:55"} {"_id": "4WrGMLf5KthNtJxZT", "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 , Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n some File and no Trash and no Protected\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": "Rrdiyc8xSCjdSvrkg", "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-11-18 20:59:28"} {"_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": "DnAm62D7JaqDzyy5y", "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 (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 : 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 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 : 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 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 : 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": "HP6raJ84gG8MvNyc7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:33:20"} {"_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": "KBb7kkztkQDLeAtxw", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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 implies always 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": "7CHFsz9omauHhHQvR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:47:02"} {"_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": "WRQWvWPnAMcHEPhm2", "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-12-1 11:24:56"} {"_id": "WDiepwABYDYCy7Moa", "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 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\talways no Trash & Protected\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\tall 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\tall f : Protected | after f not in Protected since f 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": "bkAysrMs68YnaPwN2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:10:41"} {"_id": "y45sbiRWj7ANfQGn7", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - 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": "GYDTwKr36TXAazR9v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:47:22"} {"_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": "7aZKF6MeCg8NDaTF8", "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 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 after no (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": "FvWSJtnS4nSdEfDsA", "msg": "This expression failed to be typechecked line 41, column 9, filename=/tmp/alloy_heredoc15271221964437156936.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:43:04"} {"_id": "8wzqEJtrbbS2w3C8c", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\tall 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": "me3fo437uYmWxuvqp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:10:20"} {"_id": "3tL4CiuNNX5Eqf2u6", "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\n \tsome 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 \tsome f: File | (once f not in Protected) implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\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": "5qLSTKWo9tJRNrWY7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:07:20"} {"_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": "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": "asYKm4j5tFWvJmbNj", "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 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 \talways all f: Trash | once f in Trash implies 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 always all l: File.link | eventually always l 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\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\tonce 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": "KbFL4C7h5HkuNxP4Z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:48:17"} {"_id": "b4iqoufpFN6EDca53", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | after f in Trash implies some (f &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": "7BksX3uGLZiAKDGma", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:55:01"} {"_id": "89oFCKeMGDprfRMzr", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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\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\tall f:File | f in Trash since f not in 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\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": "x3ZGWoTLrRCGRvxe2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:25:36"} {"_id": "Sj2YQuertZGXNRcH4", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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": "9Bks6qEGTbqE3782E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 00:07:10"} {"_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": "tBaAN3qFWkHWzL2GZ", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "wEKH2D9xP6oZQqgbw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:29:36"} {"_id": "F2SdNryqhsfWpWBX9", "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 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 \talways all f: Trash | once f in Trash implies 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\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// 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 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\talways all 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 all f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "eTTtgTgBReqqk4pHB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 09:13:53"} {"_id": "B6DPJLY83KeMav9xq", "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 + 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 | eventually 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 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 always no Protected & Trash funciona, nao devia\n always all p: Protected | always p not in Trash devia funcionar\n}\n \n the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n \n every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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\u00e3o percebo\n always eventually all f : File | always eventually f in Trash\n}\n \n if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in Trash nao precisa do always antes?\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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "f7ugMHLMxoev3SAdy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:40:57"} {"_id": "v6i62spGg2HFDpD2E", "cmd_c": true, "cmd_i": 16, "cmd_n": "prop17Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "98YTeLqWYKy2H78Xz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:39:24"} {"_id": "4CWN7DtrKZycHGTXs", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\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": "j2tm2Z5PwyZiezbPz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:39:47"} {"_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": "ngpYDykT5PKDGFAer", "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 + 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 | eventually 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 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 always 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 always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "JHp9uM6Hmet964qgS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:05:53"} {"_id": "2r33CcPx9twopsdvH", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways Protected since 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": "AdPRJyd3Qz5p9gZHu", "msg": "This expression failed to be typechecked line 101, column 2, filename=/tmp/alloy_heredoc9743748801220282490.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 22:44:50"} {"_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": "z3DKp46vnJid2FDua", "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\n \tsome 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 \tsome f: File | (once f not in Protected) implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\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": "3tL4CiuNNX5Eqf2u6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:08:06"} {"_id": "9JiNdQSvwArTP9KXC", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File - Protected)-Trash not in Protected 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": "X6a4Q7Gsmwrw33Cqo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:46:49"} {"_id": "SXziDsBtLTkCLrvvk", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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": "wnCFaBL2wefciACYm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:52:53"} {"_id": "YFpBSPD7XWfWpqgox", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\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 since f not in Trash\n}\n\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 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:File | 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\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 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\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": "AQfFXN7oJ5svMmXLC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:56:24"} {"_id": "979mdYPp8cR2casTS", "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 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\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\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\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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "36YAcMwaQwFWE5EKY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:19:53"} {"_id": "CcKFd5DKNZ4c2dWqB", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "vqNQs258RTS8dxWop", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:06:24"} {"_id": "PcKJWHttZYyyXMnrL", "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 + 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\talways some File\n}\n\n// some file will 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": "jTx3ZF9i5wxK9v96v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:53:20"} {"_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": "sniDX6A6rZczDpPfk", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : 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": "C2iKMiLozehAErT9H", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:37:32"} {"_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": "ik4FM6sJHqR9EppbC", "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\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\talways no Protected & Trash \n}\n\n// the protected 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) - 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hHcBsW9HE3DS97Sa5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:52:58"} {"_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": "GNeHLRxrrbT599gti", "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 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 | eventually f not 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\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 | eventually 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 always no Protected & Trash & 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 always no File' & File & Trash \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' => 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": "zECtof3wyMirtKx9Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 01:08:45"} {"_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": "QWoQQZi3mzp32bky8", "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\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted 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 p : Protected | p in Protected until p in Trash & 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}", "derivationOf": "iX7ybZbEQiTND7tnF", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 00:56:59"} {"_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": "5KDgyuKxKt9bqsBbA", "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 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 \talways all f: Trash | once f in Trash implies 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\tall l: File.link | eventually l 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\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\tonce 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": "X8AfFSKpz3zyheBFN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:53:49"} {"_id": "LLbwfddmxEFcmZLYv", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - Protected) | after 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 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": "L6kpaSGfY2Lo2JLkP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:35:25"} {"_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": "TFZ77mFwmAhyTzAsG", "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 (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 : 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 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 : 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": "y4YaAbzgBDumCwsDj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:28:45"} {"_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": "ZHDNMEemhjSuMzxkr", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since 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": "GTGcqGszaQWmN8ML3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:31:48"} {"_id": "4J39mmPiSYQNRBbC9", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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\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 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:File | 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\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": "Dz8euAEkiEPsLjEyZ", "msg": "Subset operator 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": "2020-11-25 14:02:59"} {"_id": "NW6cJ4pz3ZxXbeX6w", "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}\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 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": "n3vECZX3FoYB79eJC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:49:12"} {"_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": "MXvXeEMkMCCwCTsYb", "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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (all f:Trash | after f 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": "Xt9HeqWEAsiuFugMa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 17:23:07"} {"_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": "PSmYHSG5tGubLGR4P", "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\tall f : File | f not in trash and after 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": "fnbb4uesQDYzazifY", "msg": "The name \"trash\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-19 19:57:44"} {"_id": "Sm8DQ3XA9xvhNspiZ", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 | 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": "JsHLfkespwRtDZbkc", "msg": "This variable is unused.", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-12 23:57:44"} {"_id": "uQ9f5uf6A6sdr2ko8", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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 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 (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 | 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 always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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&Protected | 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: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": "ERapfoBnsQe5ohxr6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 01:05:05"} {"_id": "5K94HSPK6xB6nabZe", "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\tonce (no 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 f:File | f in 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\tafter (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": "pCTDcsoLkMawAfNnS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:51:01"} {"_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": "osRoavzckka83ezpK", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually 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.link 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": "o52nuBCmtYiNSjgsX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 02:53:37"} {"_id": "8Sf9GEuRHpZdr9cfm", "cmd_c": true, "cmd_i": 2, "cmd_n": "prop3Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "Y7iB8fkSZz4jHF7TT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:38:14"} {"_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": "FXt89DnFuwbPRejgQ", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: File | always (f in Protected implies after 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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\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 f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "Q5JiWQ7ayaqAHHMon", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:31:28"} {"_id": "qBsDZkZpitsGJ4e5c", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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(File.link + 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": "aHH5AaXcRJQq63bas", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:27:01"} {"_id": "8B2JjDN3tpjgTnRus", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link 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": "z9HWK9n52MbyXiqWB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:18:36"} {"_id": "tDdYfgzBCzgHX42MW", "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 Trash\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\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": "Je9uBa3bvBEzF7qFe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 16:21:52"} {"_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": "L3yfCEFsitKNnbQ2i", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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 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": "SDt8PqhjGxyedcJYj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 04:01:48"} {"_id": "T5cPjx23EtWCu6Ef6", "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 all f:File | f in 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 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": "9KxALpyhBYGJZcK8b", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-11 01:54:14"} {"_id": "yoqEvitNko3jA5LXh", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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": "jNeJThnXoPKfD44ki", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:52:58"} {"_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": "qCXykJBTfsLPXbRdz", "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 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\tall f : Trash | always eventually f not in File + Protected + Trash\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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "Gav26jB5FSx7yQSHZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:20:48"} {"_id": "xGzmpNdHquJmNcP8j", "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 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\talways no Trash & Protected\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\tall 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\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": "QRfddRjvofe8RcZpX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-28 00:11:37"} {"_id": "BPExuyzewcD787GjR", "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 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 (File & Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some (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": "pbieSKJDSgvZQ9Aca", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:00:44"} {"_id": "GQhWzc9jrwhQFcdwe", "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 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\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": "pCqACFnxapn6HhhRe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 22:31:58"} {"_id": "wP8heM8rkZ7ZnNEef", "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}\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 since 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": "Rmr6tBfXhLma3jHoM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:06:54"} {"_id": "m9erb4MFpj2C6fdcB", "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 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 (File & 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 => 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": "8vKG5dM92J8WtFBzC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:05:36"} {"_id": "DTj3Z9sCoYS9CxQsZ", "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 (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\tFile in Trash historically 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": "eZBFTFkkPGZxwbs6a", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:23:10"} {"_id": "YMva9H9FrkCGC8k2F", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some 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": "qFDnxv5TRETEFS4sz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:40:08"} {"_id": "obpcFhpsfkv6mqQWD", "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-Protected | 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 | always (f in Trash implies 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 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": "Yr98SmEQTbgEtb3FJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 16:28:39"} {"_id": "NPdaE7aH5GrGAwreS", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in 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&Protected&Trash | after f in File&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\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": "Txan7sw6gW9bgCM7R", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:33:21"} {"_id": "S7BnGbbN4NF67Msb4", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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": "oJD9Fpq7aSsnBrxtZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 22:15:53"} {"_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": "wMuQiqnKJru8rqRJ3", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually 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\tonce File in Trash since 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": "FAfETFoByJp9ick6F", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:52:16"} {"_id": "Kf5g7RvTveqzffh73", "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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t (all f:File| some f.link implies eventually f+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": "J34KQYzzLSXGKKgFe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:32:16"} {"_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": "EvkWvMKiT6FDDy75L", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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.*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": "wwp56Raxd56c96qcZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:46:21"} {"_id": "uooEn6p3D5EWi2XLy", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\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 always some File\n\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// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "onh5TJPpBqrDvZKdi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:02:29"} {"_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": "mSNeMfC2DhkG3qnE5", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall 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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EhrJJrYNYB8snTadj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:28:15"} {"_id": "CXhE2zcLpbBTQ69rd", "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\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\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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RLZacfACSNZwxMkxN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:48:31"} {"_id": "a856DAXQqEic5BG3k", "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 + 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 | eventually 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 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 always eventually File.link 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 all p: Protected | historically p in Protected and always p in Protected\n}\n \n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | eventually 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 always 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": "HcdGm6W8JcZkLJeQK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:18:36"} {"_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": "gwdcwa3mQW3WHAxRK", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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\t\n \teventually some f:File | f in Trash releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "F4Ck9fPu8GvDHnrgz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 04:10:05"} {"_id": "7AusT6oP3E4Mp66Nr", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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:File |always (since 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": "4B3HwzsKWAbeCvJK3", "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-11-24 18:10:07"} {"_id": "axPYfPJMmexfd6nhL", "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 no Trash+Protected\n \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n always some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\n some File & eventually 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": "bxReyJzdH8jvzvWS5", "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-12-9 13:40:53"} {"_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": "ZehDrgtuxgidriXfC", "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 historically (no Trash and no Protected)\n\t\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 eventually (some 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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no (Protected & Trash) \n}\n\n// the protected 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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\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\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 no (f & Protected) )\n}", "derivationOf": "rFiwAdRFoC29PwdBc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:37:28"} {"_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": "4x4PddQj6X8NQdurk", "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\t\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\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": "DDrPjp4vvCrBcjdxb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:04:37"} {"_id": "Tu8uReBkP45M9rzoe", "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-11-24 16:11:40"} {"_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": "vNh6jt8wevrRMRKSp", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 t : Trash | historically t in (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": "KHjtodfZYTCcWYvx6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:42:45"} {"_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": "Cc6Z2jWHXukv9iuBG", "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 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 \talways eventually File.link in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Trash & Protected\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HtECphvZ8iWhezvRx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-27 23:59:03"} {"_id": "hRgngih9gi83QnSMd", "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 always( 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}\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\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": "q5GA6tL87AWMZqNbE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 18:07:35"} {"_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": "Wz2GjxnbrxdEq3bge", "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\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\talways all l : link.File | eventually l in Trash\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 - Protected | 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\tall t : Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all pt : Protected & Trash | after pt 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": "8msgvffj7a6MCfmCB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-29 21:53:38"} {"_id": "RBGYKWeCfsNxQDmt9", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n\tno File implies after always some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "owu7xJ7qFH7uxMFv2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-14 00:37:36"} {"_id": "NBXddwCKhMJKQbGzB", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jiNy2qy4m4dEJSrJo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:01:59"} {"_id": "DRu2KkYFyFjD5dCG8", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "X5Ld3vhSksQu9rQJo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 01:03:54"} {"_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": "Btn7qExy5DK3oWNYq", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n \talways (all f:File | some f.link implies eventually f.link in Trash)\t\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": "sDLobbSLE767omcQZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:14:51"} {"_id": "dSd8kR2G8Q9TdxCcS", "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 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\talways some f : Trash | eventually f not 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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "P8MT2v8JEhen5vknt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:19:05"} {"_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": "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": "af8GCrgtcdxBB2uts", "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 \t\n \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 \tsome f: File | f not in Trash implies after f in Trash\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\tsome f: (File - Protected) | 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": "hz3sMvk2TmNQMwAMt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:00:26"} {"_id": "m8J5DeiaSMGgGMbHv", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 always t: Trash | once t not in 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": "4gGDFQEpLY4hogd6A", "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-11-23 23:45:38"} {"_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": "GTwjEuf3PNELpeMiY", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually 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\talways File in Trash since 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": "4AGK2wqRcR3fn34JC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:54:49"} {"_id": "vgMfPDu3ZH9S72FSa", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 in Trash since fnot in Protected) \n}", "derivationOf": "RkikAhkZMqRGNmkrF", "msg": "The name \"fnot\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 20:49:56"} {"_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": "qvZiKcc9DH5Xi7tp9", "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 (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 : 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 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 : 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 before 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": "xXFkfxYA9FQBFMAvZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:30:06"} {"_id": "j3szbh8GRQSRYkja6", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after 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 after 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": "N4Y9nuSNzbZwo2Lby", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:18:44"} {"_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": "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": "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": "YL4fZNWHiWdrYBAYR", "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\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\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\tall f : File | eventually f in 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\tall f : Protected | eventually f in Trash => 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": "8Nbe5HrFKqukdZsLo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 20:14:56"} {"_id": "neBZ7hwWaMk2rJmkH", "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 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 | eventually f not 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\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 eventually some f : File | f in Trash => after eventually f not in Trash or 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 always no Protected & Trash & 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 always no File' & File & Trash \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' => 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": "bsGtyrmHZrfQt6LH2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 01:03:56"} {"_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": "fdoZE2LXwEw5sMfJC", "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 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 \talways all f: Trash | once f in Trash implies 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 File.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\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\tonce 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": "jSgnHGYpp8ATwQyyX", "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": "2020-12-1 21:58:06"} {"_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": "St2mWCv4ZCBhyCrLG", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 (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": "N2sQ9QY7tWpgkdXBX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:22:14"} {"_id": "e6SCQG8JrWD7yFwt7", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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 all f : File | f in Trash implies always (f in Trash)\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "y3DgszHXHKuzQTZgo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:32:13"} {"_id": "7jDhqviNxNYED2uHi", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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-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\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": "XbjEH9SL6Q93W6zNJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:44:17"} {"_id": "nTu9WhedT4knYv7Zg", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all t:Trash | after 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\tall 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": "3TaQAAPA6vpDpCuQq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:28:24"} {"_id": "kzvrdteBYQQq6jKdb", "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 (some f : 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall p : Protected | always 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZbbvnFpE26NfqQo8t", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:21:59"} {"_id": "i7xGmuMKxNo6BNoKm", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always (Protected implies 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": "qdFgY9Jd7TJphGybs", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-16 18:08:47"} {"_id": "t45BxKKpdXbYN4Aun", "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\talways (f : File | f.link 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": "6hMEunQhtTXyQwL5z", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:17:01"} {"_id": "PPEsvXnyf76pfsv9Y", "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\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:50:45"} {"_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": "BAWqHJw8npoDkmn8v", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Proteced and 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": "dzteErvMX27HvF2qg", "msg": "The name \"Proteced\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 23:31:55"} {"_id": "sZRKcWZKxw6cZJKFt", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (some f:File | f in File implies f not 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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "yZoGBeajbx6fsERTA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:18:04"} {"_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": "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": "k4SbjvZEymGQRo8Rp", "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 p: Protected | p' = p\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zmtKTzKEaegjY7q3j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:55:00"} {"_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": "pcX3Q4oeawcYKz8Wk", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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 all f : File | always f in Trash implies (f in Trash)\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MQeZzFLSPbmAkXpNS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:32:54"} {"_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": "CbgvSGqraspKM49tL", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\tsome f:File | eventually f in Trash implies after 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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "MoAur9XPowJPtgJZa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 16:07:47"} {"_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": "wGtt6Ce2c4jnygQEy", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "CyXyLTJdcBGvcEWW6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 01:09:16"} {"_id": "4gW4HKrKic8JEtQR9", "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": "gxpphHTyrrvRiqcv6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:27:11"} {"_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": "AytXfMchBF2eXp9x6", "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 all f : File | after no File implies f in 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": "gd2kYCMSdTcA2g4jd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:39:50"} {"_id": "vpPyagBCyBg3N4EWT", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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": "yzRDXBSyYFmEYwtrq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:26:58"} {"_id": "kFoqCwiAMhuGQkZCa", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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": "TvHhAoQ8ze6AdZ5hX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:57:39"} {"_id": "YMTLonKTa98jzYdwe", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t always (some 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "doDdGzeaEpHfkDXqd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:53:41"} {"_id": "ZzuxCzEzZ5yFvGLxM", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DeaQKHPYQkqxQsKc8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 15:45:11"} {"_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": "me3fo437uYmWxuvqp", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\tsome l : link | eventually 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": "cECFq8oGwNJWDZLvc", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 12:09:42"} {"_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": "na5X5Zbp8fAQNahtw", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always ((eventually 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": "hMLJfXyQuAQMgMu7T", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:09:27"} {"_id": "xDXtQKDuMaTZJJDYo", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "eF49T9AL9oFSFCpXs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:07:28"} {"_id": "4A9jhyMovCKX4jKon", "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 | eventually no f&File)\t\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 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 p:Protected | no p&Trash)\n}\n\n// the protected 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 | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "EzWGFGPDKkhqJzZjT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:29:30"} {"_id": "YxonNXaD55QjcfyL6", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n all f: File | eventually some Trash and once 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": "v5YDXKcZjpiGWmk6t", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:42:54"} {"_id": "zCzrF8eoaCBKHoK9d", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 (Trash 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": "TZc5FPNbDTzsKfovv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:51:36"} {"_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": "Y7iB8fkSZz4jHF7TT", "cmd_c": true, "cmd_i": 1, "cmd_n": "prop2Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "Z2hKqTddpSympdv5u", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:38:11"} {"_id": "jE3d7Kv78zF9ZQrNA", "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\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\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\tall f : Protected.link | 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": "LcAkLqBLD9hDdqT6L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 20:08: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": "YP2GyrfYeo7R7Liei", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: Protected | always f in Protected\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "J3bSmYkAm2tpPkq4o", "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-12-1 22:38:47"} {"_id": "KcjpAxJe6zdPqBcNB", "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 + 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 no Trash and no Trash until 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": "C59cNxvDtaMW9ZmDe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:45:50"} {"_id": "YL2b3qx9Q7SgqmnfA", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | once 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": "JHQTRng36N8PkFDBx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:49:46"} {"_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": "FbKvPqPgQ5g46u5y3", "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 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\talways eventually #File' < #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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "ns82SNAfv5vrHogsq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:17:32"} {"_id": "uyuLgE8gPGXWh3Bjs", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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\talways(all f1, f2 : File | (f1 -> f2) in link implies eventually (f1 in Trash and 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": "Ptqkd3XYBRLQxEeQA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:14:52"} {"_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": "bjmcTjxLd68aSqe6j", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "8ppYw9zRQhzJHa9nu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:38:57"} {"_id": "zW3yDQGsQSwXHqc7t", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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.*link 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "fa6RcSPX3ubicLo3y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 21:55:55"} {"_id": "DMtBEEtTjZBvG4iqP", "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 historically (once (no 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": "dgh7mNog56RfBH2of", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:17:43"} {"_id": "Jy9TtE3uBLzYPt8LS", "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 (some f : 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall p : Protected | p not in Trash' and p.*link 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": "MwbXe3WqbLnGucoYt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:28:03"} {"_id": "TYeZ2BWvPtz4K9rrT", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at 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\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// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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\tall f:Protected&Trash | 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": "y8NavvsoSiDvtZrS9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:51:17"} {"_id": "sGRFHBP8njaeWZHju", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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\t\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\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": "LnfBtBA6d7rbMXuJj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:54:16"} {"_id": "qt9d64h2YoaHAXhKj", "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 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 File & Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all p : Trash | p in Trash since p in Trash\n}\n\n// some file will be 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 Trash & Protected\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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "6EF32pdtZuY6wmHF4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:26:50"} {"_id": "TfcRmbNEh5ctYyi7b", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 | eventually 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 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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - 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 : 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 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": "77hSRQzai6sZRd4kf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:02:57"} {"_id": "pWNwHQ8maPRdbLP6m", "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 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 (File & 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) since (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": "Xaoqew7CohLW55CQL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:14:46"} {"_id": "6BNAop27gwr3kbiYH", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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": "zcgWZHZAL9Yke546e", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:45:12"} {"_id": "DkazuGYBFEmFiPwF9", "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 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": "5LMhZBFXYyRfTgMvF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:16:52"} {"_id": "oRcLNKsmZcf9HjZ3S", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n 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": "4WYRBmuQFkqoATaMS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:32:27"} {"_id": "oHvtidoxCNmRqZphv", "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": "LiuxEA6eQDGthFMKD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:01:33"} {"_id": "dSpCGWS6jnqY89dWt", "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}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways Trash\n}\n\n// some file will be 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": "YYoom5BfRLv9usrqH", "msg": "This expression failed to be typechecked line 45, column 2, filename=/tmp/alloy_heredoc14316275521324239607.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 12:10:02"} {"_id": "T8zv5ueGqJ92qDcaa", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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": "f26YSRatW8wKYhy3R", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 02:49:41"} {"_id": "4TtWd7GkB3CAbeYNs", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 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": "BhBWjiLh23kcC2hFW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:44:00"} {"_id": "3NZdcvJZFax8MeSwC", "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 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\talways all f : Trash | eventually f not 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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "dSd8kR2G8Q9TdxCcS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:19:27"} {"_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": "RkikAhkZMqRGNmkrF", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 in Trash since fnot in Protected) )\n}", "derivationOf": "zEx7NSgJZCMSDFgoZ", "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-11-25 20:49:51"} {"_id": "7iBdnN4JFEpo3t6WM", "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 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 \talways all f: Trash | once f in Trash implies 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 always all f: File.link | 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": "YD7nFyPfGyszPiiSQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:29:17"} {"_id": "Ek4jwrNAqWxFPHtcb", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : 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": "S7GMJBazGyqNoiKBc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 22:49:06"} {"_id": "RydwrwjckwZz3hM47", "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 \t\n \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\t\n \t\n \teventually some f: File | f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after 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}", "derivationOf": "yuyz7qagXNpFNeqnw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:02:11"} {"_id": "zH2svvTdvcHQXtww7", "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\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\tall t : Trash | t in Trash since 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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9JwsqS3CxNoZMjKjv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:45:04"} {"_id": "peG2yeaL9HSbQkYB3", "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 + 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 | eventually 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 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 always no Protected & Trash funciona, nao devia\n always all p: Protected | always p not in Trash devia funcionar\n}\n \n the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n \n every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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\u00e3o percebo\n eventually all f : File | f in Trash releases f in Trash\n}\n \n if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in Trash nao precisa do always antes?\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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "F4P7B9ALZD2fD492k", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:48:25"} {"_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": "zEx7NSgJZCMSDFgoZ", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 in Trash since no(f & Protected) )\n}", "derivationOf": "Bj6c38YrZLQqhCLw3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:35:26"} {"_id": "4tikY4q5F4BgtqwNs", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n all f: File | once (f in Protected and f in Trash implies always (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}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JSHv2dmKXjoagMJ3S", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:41: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": "4WygsFg8oPKqHze83", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\tall 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:File | f in Protected implies 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\tsome 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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "bRA5uREbPGFEgfRKx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:15:08"} {"_id": "6xmJgNsW4uPZhafM2", "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\npred prop2 {\n\t\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\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": "mAaMhGDbgevxefs2f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 17:56:24"} {"_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": "vLeJeGjuyoH3yW2fr", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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 - Protected | eventually f in Trash\n \talways all f : Trash - Protected | 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": "eNqTTPwin8G83WSCb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:37:59"} {"_id": "qA3eEi8m8eSNhwzyE", "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\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\talways all l : link.File | eventually l in Trash\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 - Protected | 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\tall t : Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all pt : Protected & Trash | after pt not in Protected \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually File in Trash \n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f : Protected | 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}", "derivationOf": "Wz2GjxnbrxdEq3bge", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-29 22:01:36"} {"_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": "crEqhDhhAeFDfWAwb", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "XcFbEcCCfcky4aN95", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:15:43"} {"_id": "fTkt6N7HmxKxrogEF", "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 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 (File & 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\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": "pWNwHQ8maPRdbLP6m", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:16:57"} {"_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": "JK8p9zWHFQzDJtSX3", "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 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": "X5M7CkQH2hhvjTb6x", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-4 19:15:13"} {"_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": "zWXsHz9nWfcZcZnSF", "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\n \tsome 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 \tsome f: File | eventually always f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash since 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": "raRXFvyofGywkbS5s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:59:52"} {"_id": "XMozpKHKDYoz9gqgi", "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 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\talways no Trash & Protected\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\tall 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\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": "CqaL9AJKkDjSWzXn4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:13:30"} {"_id": "bkbcd36PemWFYYLqq", "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 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\t \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\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\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 always no Protected & Trash & 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 always no File' & File & 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\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 in File - Protected\n}", "derivationOf": "4DNKkM8fjyrzQ7H72", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:28:05"} {"_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": "XcFbEcCCfcky4aN95", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "bEYbMy9aShs98SZJF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:15:39"} {"_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": "LD6LYSvJQ2AzspqAN", "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 (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": "bkjqbYxgzWwGCz4gp", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:40:40"} {"_id": "FhjCHL3xZ9cLZ2fnY", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected 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": "iAtp6KH9jnxb7qHTW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:39:58"} {"_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": "kbQfdM62xe939Qvxr", "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": "auTbqvN5RFN86SLiL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:14:56"} {"_id": "ToHEuNRxc9c9sqLR7", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 Protected' = (File - Protected) + 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": "4TtWd7GkB3CAbeYNs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:44:27"} {"_id": "gpK7SdeqvF6ak7LJY", "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 no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n}\n\n// there is always some file in the system\npred prop3 {\n always Trash or Protected\n}\n\n// 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": "3Nq6XGeiEp67G5N6K", "msg": "This expression failed to be typechecked line 30, column 3, filename=/tmp/alloy_heredoc15708450890219490337.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:42:49"} {"_id": "2QrKhikSbGN8b7NNZ", "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 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\tall f: File |(always f in Trash) since 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": "YkFpRwf5EYJ6xHw9v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:57:19"} {"_id": "u6aCpYNnDrWJbyGB7", "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 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 \tsome f : File | (f in File until f not 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\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\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 always no Protected & Trash & 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 always no File' & File & 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\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": "QpxCDd9cv7hafpin7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:43:12"} {"_id": "Xym4gcrRmXNNEpBcS", "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 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": "AKXomTuFsxax9394Z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:56:30"} {"_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": "EmgNJ2s74eCGKRpWu", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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 : Protected & Trash | always (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": "PF2tjiLu3GK8EPwho", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:35:13"} {"_id": "mfFao4anZyZwFvZJY", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all f: File | eventually f in Trash and eventually f in Trash releases f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "LjuLKAY3DKAs2qzmn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:16:39"} {"_id": "9vDsw29FccoAnrT5j", "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\tonce (no 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 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\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\t\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)\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": "kARhj6k7TmHy4nfpe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 23:00:49"} {"_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": "TcQm3tnFxscNoCeRQ", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\tall f : File | (f in Trash) releases (f not in 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": "jDEPKCp2HcE3vQnH7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:28:35"} {"_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": "f3iK4xRBDpmJ8eHgd", "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\tonce (no 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 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\tall f:File | f in Trash implies (always after 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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "QWzjoT2LF8kgtLjC8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:09:40"} {"_id": "LJchuTRi7LMQRg2Cq", "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 all f:File | f in 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 f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | f in Trash releases (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\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": "2Jr77fRqSxANc5qRp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-11 02:11:56"} {"_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": "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": "aGtxXoZPWYM2wqEto", "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 Trash\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 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 p:Protected | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "rHbApGbDcQ3x5e59F", "msg": "This variable is unused.", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:15:37"} {"_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": "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": "H5YLKQvPvhv4jJvr5", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t all f : File | always(f in 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\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": "Fk4cxT9g8SJaoChPF", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:51:47"} {"_id": "iLpGKR5svxx5pwhWL", "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+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-11-24 17:30:48"} {"_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": "NoZAzsJBKMC5XpwZt", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 | \n}\n\n// if a file is protected, it has always been so\npred prop16 {\n \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": "f3L9TKL8x95voDdbr", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:36:39"} {"_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": "um8Bk6dQ9dcQPMnPc", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies 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": "8agawsofKNRbBfpvb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:49:00"} {"_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": "W6tLcocdDWrpRLXsE", "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 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 \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\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\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\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 always no Protected & Trash & 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 always no File' & File & 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\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": "8eyLPF4Gszk5Cfsoi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:41:59"} {"_id": "zDd7TBYXzxmvZZhkK", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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,f2:File | f->f2 in link implies eventually ( f in Trash and f2 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 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 | 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:File | f in Trash and f in Protected 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "PZQD97AXMCp4npFeA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 09:07:38"} {"_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": "FtHZRZyQhfBSaqMNs", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all f: File | f not in Trash since 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": "9SPgt4rLz8QBtKnt7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:34:54"} {"_id": "WLLfwD5DjoDsRQBmZ", "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 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\n}\n\n// some file will be 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": "x4QAbTaNK3ZMsiyqK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 23:27:07"} {"_id": "Ed2LBQpTnrCukiumv", "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\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\tall p: Protected | historically 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": "G4r5nRtWKtYk89Qfk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:46:44"} {"_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": "vk8Av5Gz3yAAYKLzW", "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\talways (all f : File | some f.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": "xPeTe3FdpxzspZTta", "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-11-26 10:17:21"} {"_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": "hHcBsW9HE3DS97Sa5", "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\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\talways no Protected & Trash \n}\n\n// the protected 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 Protected' = File\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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qjYWBrtNdp7NagByN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:52:12"} {"_id": "pYtRf28vutcxSCanA", "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 + 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 (no Trash - 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": "v3KcNwgK8rs78npgP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:36:41"} {"_id": "PXLGmdj3jZNta8KhK", "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 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\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\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\tsome f : File | f not in Trash until (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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "KHEJXiAB5F5Ng7GgJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:10:59"} {"_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": "eYPtFgmkLe5iiry6M", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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": "B2S72M7fEH6AWLM7u", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 17:13:06"} {"_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": "4gEmo3Rbsgv8ZTxHW", "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 historically (no Trash and no Protected)\n\t\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 eventually (some 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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no (Protected & Trash) \n}\n\n// the protected 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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\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\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 no (f & Protected) )\n}", "derivationOf": "6iXdf9QFAHt9rderz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:38:55"} {"_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": "xhZi4T5xMAm6ah6Th", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\nsome 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": "cPSEmEXa8dtiZXkmk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 22:43:26"} {"_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": "EMz6E2zDEyB6JkAdX", "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 & 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-11-24 16:38:58"} {"_id": "9mjZoauPBfWC78wtC", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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 | after 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "ZCDfF8SjWdkphD5B2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:28:41"} {"_id": "a3ZasZ7AbBBrKRvwS", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n eventually 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": "bSqmZoBuD4LijYexT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 18:59:48"} {"_id": "drfHwxYaJotjh682C", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\tall f : File | historically (f in Trash & f not in 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": "9jPK8KBWzjFmBx4Hb", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 19:50:49"} {"_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": "gEAXiaTkQ6gnRaoNu", "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 : File | f in Trash implies 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' = Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eEf2NDHBoEPDaA6Ld", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 16:01:52"} {"_id": "7Cra2HnK7RiLwnRwz", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & 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": "BxKXQFpa2FowGoBn4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:55:02"} {"_id": "GKQpiLGgD8N5TT8H9", "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\talways (some f : File in 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": "5z83f7LT3zpbmHcQL", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:13:36"} {"_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": "aHH5AaXcRJQq63bas", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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\tlink.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": "ys5HNL3zjncqutkRh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:26:12"} {"_id": "TTJtvcuH6GbLk6DDa", "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\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 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 p:Protected | no p&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-Protected | 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| 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: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\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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "YkDXif8bX8dZ9ur9K", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:19:01"} {"_id": "sLnFq4vPWpWbanQRQ", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected | always (f in Trash' => f not 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": "GmjNwWBrGCxsCHjPj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:24:09"} {"_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": "5TJE26ceEriNsmgsK", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n\tno File releases some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AKfcWuM6J728qKfR9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:22:12"} {"_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": "TzYnigamsbekwQcXb", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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\t\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\talways(all f:File-Protected | 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 (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": "nC5r8ExqD44iR2iqW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 01:01:12"} {"_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": "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": "oAeY79BG8J94KcGMm", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\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\tall p: Protected | once p in Protected implies 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": "zF9jyBtZBnLukBJoA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:23:27"} {"_id": "5nYh8Y9srk2RgaFFz", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | eventually f in Trash implies after some (f &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": "b4iqoufpFN6EDca53", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:58:08"} {"_id": "d2D9YcMa9W3NHmjPM", "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 \t\n \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 \teventually (some f: File | f not in Trash implies after f in Trash)\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": "Tb6FmsLdjZh9AfKvR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:58:58"} {"_id": "DbawuMnt6B5R4rZtw", "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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 17:53:49"} {"_id": "LqocEgQ6MMgq3bkK4", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually some f : File | f in Protected\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\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 always 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": "uAt3KAPwP32HjgKTo", "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-11-25 20:10:12"} {"_id": "bsGtyrmHZrfQt6LH2", "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 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 | eventually f not 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\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 eventually some f : File | f in Trash => after eventually 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 always no Protected & Trash & 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 always no File' & File & Trash \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' => 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": "z8QHz6MNbf5LAxj3j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 01:03:34"} {"_id": "GwLt2Wa44YWFWFKCW", "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\thistorically no 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": "fkg5Ek6Xt2Sq8Q464", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:12:36"} {"_id": "6b6miFQp4yYnskdkh", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f 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 | f in Trash releases f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "CkuwJKthZvkbShkdK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:21:58"} {"_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": "n7cNMykxBgo8BWDRC", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | eventually f in Trash since eventually some (f& 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": "hBLPxT6TvKLsnZkPo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:27:07"} {"_id": "TqyFveen3svDW4ydD", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link 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": "9y8et4bh2SQiXq5cm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:17:00"} {"_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": "cRMZnYefJc4Wc7znp", "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 no (Trash+Protected)\n no Trash and no Protected\n \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": "YX7FJ5Mxv2p7H6FJP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-9 03:16: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": "Szc8pTYbHakTX9n6c", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f:File | f not in Protected implies after 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": "LWMfEuGphPwzYDHCz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:59:05"} {"_id": "Jmva4J97TfAdeShWS", "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 + 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": "5fj2AoKQCEnGXWm5X", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:18:51"} {"_id": "X5M7CkQH2hhvjTb6x", "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 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": "JKxJ2aPJztZh6sFpA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-4 19:14:54"} {"_id": "xWPpdtXxCpny5xX7v", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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 eventually (some f : File | f in 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": "fndiDmTsr5D2LoDqw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:26:35"} {"_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": "zCJQXDuy6huBjpqAF", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 all f : File | eventually 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": "agAX7rJeoubX4o53a", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:55:24"} {"_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": "DxZpsHDm7LFmMpWRF", "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 Protected\n \tno Trash\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\tall f:File | always f in Trash implies 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": "rWXs49MHeQtHdW2Jj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 19:36:29"} {"_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": "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": "CD62QczxQk9XRKdNa", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 \tall f:File | eventually some (f.link:> File).Trash\n\t\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": "Gp9JjbGbYAfKANBde", "msg": "This cannot be a legal relational join where\nleft hand side is f . (this/File <: link) :> this/File (type = {this/File})\nright hand side is this/Trash (type = {this/File})", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:43:13"} {"_id": "ivFjidh6b7xxuJLAW", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\n\n\n\n always all f : File | f in Protected implies 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": "WouhheSHfFqxGA2WG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:56:35"} {"_id": "neD88GssjHGTBSuoX", "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 some 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": "2bJZbqBxYSSzGGbzP", "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": "2020-12-1 11:33:59"} {"_id": "8tppbx3iPobJ9C39F", "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}\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 since 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": "wP8heM8rkZ7ZnNEef", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:07:49"} {"_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": "kv3NBH5DHKpxdBeHD", "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\tonce (no 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 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\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fHncqFWcMCgTYWHGy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 22:48:56"} {"_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": "qRRKHDv2tQSkTuLvb", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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": "2iuxG3nSGBuTqAPw9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:50:53"} {"_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": "4MAQDs6gPeguNFYZY", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 always all up:File-Protected | up implies afte up in Protected \n \t\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XmnWPRRHr2cPMfnZq", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-8 03:37:12"} {"_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": "C77hu5QcAucCyZBWH", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "atikX7ydPTgzjKHWF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 22:13:20"} {"_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": "R5ekMc72J9CJBxfMf", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\talways (all f : File | 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\talways (all f : Trash | File' = File - f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "hjGxvAs5qx9Np4gZ9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:42:10"} {"_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": "5SscT9prQa65j4HjX", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome 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": "ocfXuzZpwmn6f4uFo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:38:02"} {"_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": "7GaRScrfGLJtSRDo9", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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,f2:File | f->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\talways (all f:File | f in Protected implies 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\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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "e9pZvsgEXQaEXb5iS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 09:08:20"} {"_id": "HC89FHAKZDYho7Jck", "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 + 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 | eventually 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 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 always all l : link | eventually F.link 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 all p: Protected | historically p in Protected and always p in Protected\n}\n \n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "fpvGbnX62DGiAtSNb", "msg": "The name \"F\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 00:31:30"} {"_id": "qq5vmuizcZSbgSSKt", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "CxtWguApz2FZXvyAM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 22:08:41"} {"_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": "9phnGdPKFgcb9LPbu", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | (File' = File - f since eventually f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "isPBdGT2CrtJ7QEhu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:16:57"} {"_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": "6A4eKTy7vomvGQQQf", "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}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f: Trash | always Trash\n}\n\n// some file will be 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": "WYik43rk5PJ8mJsht", "msg": "This expression failed to be typechecked line 45, column 17, filename=/tmp/alloy_heredoc17505276687598445011.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 12:10:40"} {"_id": "EkE5pQsJa5dbSnjQE", "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 (some f : 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HSTkYTvBgqmPC9XkW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:20:57"} {"_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": "MfrBjNyLsPfLHmdjB", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tall 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": "gwstymL28u5pWy3hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 22:07:17"} {"_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": "anEJpJyFyYoJmMkCP", "cmd_c": true, "cmd_i": 4, "cmd_n": "prop5Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "TbGZB9nGsWQRixgnM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:38:23"} {"_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": "ap5iRCjDLXY6dyxLa", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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": "p6FHHGvFpDw34Fr5E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:24:37"} {"_id": "WBGmGhPQXkg3EHivu", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-Protected | 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\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&Protected | 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 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:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "WMZQLJ7WG676NYG5b", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:04:43"} {"_id": "6cEaA7w8P7BTgYgEC", "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 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\talways all 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\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\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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "7XEBd2LZum2tez3c5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:15:27"} {"_id": "XMx2HAxCSRY55HjNX", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\tall f:File | (f in Trash) implies historically once (f not in 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": "jE7qxJBoSsriL2T85", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:52:28"} {"_id": "W5PESCnEkCrPooSge", "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\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\tall f : File | always f in Protected since 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": "wnR6uvqi273ieZn3E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:47:46"} {"_id": "tGLvaAqc4KMSeH4dN", "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 historically (no Trash and no Protected)\n\t\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 eventually (some 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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no (Protected & Trash) \n}\n\n// the protected 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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\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 no (f & Protected) )\n}", "derivationOf": "b3QEc29WkCWEfhd5P", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 22:40:31"} {"_id": "SndQ3rQNseNEpxjxN", "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 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": "3zFTdEEsXHL5v7ECn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 22:29:06"} {"_id": "C26gDiixrYY3Wco5v", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "KKywAWrxyBsw8WXGx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:14:44"} {"_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": "zDHtcPNduhwDzNyb4", "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 : File | f in Trash implies 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, f2 : File | f1 -> f2 in link implies (eventually f1 in Trash and 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\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 \t\n}\n\n// if a file is ever in the trash, it was once outside\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "rnPFRM9bvcCwjQ6cp", "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": "2020-11-25 17:06:31"} {"_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": "jQdxXrYh4cS4NW2cn", "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\tno File & Trash and eventually some 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": "AgNAD3pvnYQmLp654", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 19:52:27"} {"_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": "MmxwXJbpoKps8wWMi", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f:File | always f not in Protected implies after 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": "fPny3qJvjkoor9j9t", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:00:48"} {"_id": "XDPZ7wHxJpxYWJwAz", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all t: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": "BNzfxzmKjrnKWq4SH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 17:59:09"} {"_id": "qoBtW78FYTjc2PXmA", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (f not in Protected))\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually (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\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": "9LZ24Sj9RE4KhhBS4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:42:46"} {"_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": "rs58TQDG9HLerey8T", "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 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 File & 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\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f : File.link | eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Trash & Protected\n}\n\n// the protected status never changes\npred prop10 {\n\tall 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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "BjayWJLXfpjP7Cb3p", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:35:07"} {"_id": "HSKEyZz4hyHnujHof", "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\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 \tall f : File | always (f in Trash implies 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 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": "scNEBGcshx9buaiKg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 16:42:05"} {"_id": "dJD8xGC5PrRAn9aTY", "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\n \tsome 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 \teventually File not Protected 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": "LjdPRkfuHfKGmxkNS", "msg": "This expression failed to be typechecked line 37, column 4, filename=/tmp/alloy_heredoc14960641777663058119.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:42:12"} {"_id": "nR97ntxcRCNS89jfK", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\nall f1,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 {\nalways 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": "g2oAfDHxAct9xvc2f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 23:01:30"} {"_id": "KGeoBB9Xgm3bZinYP", "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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 23:11:29"} {"_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": "5dv8ydxGdcADWckD5", "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\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\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\tall f : File | f in Protected => always f in Protected and f not in 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}", "derivationOf": "7Px3vRynWsYzL75RB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 20:10:47"} {"_id": "Z6W6N2yLLzTdv7kwe", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 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": "9vfgFLEAKGxayAsrx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:07:13"} {"_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": "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": "NXRrBWgSZhQALm6QF", "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\thistorically no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tFile since historically 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": "hfuDQA43JzDXHLmBe", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:37:57"} {"_id": "DSy5TznP8oGQnHgzJ", "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\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\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\tall f : File | f not in Protected and 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": "RTMqB23JyYzcem8Jf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 20:12:25"} {"_id": "KKAwmMTzPkbq9fgEr", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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 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\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": "r4QM2BTDSfvhERF9H", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 15:10:30"} {"_id": "CqgpW2sq8YdFteibS", "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\tonce(no Trash and no Protected) \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tsome File since 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": "f9PKXHWoNq4TswCnm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:38:44"} {"_id": "jxn6dnieLwrT6JjR9", "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\tonce (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File releases 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": "jmTQFvTJwHnnaQMJ6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:47:02"} {"_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": "6TqHY9rhz8NMnHoJZ", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 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": "jCdcSrxTsH6w5gHCj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:25:03"} {"_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": "MHDWPBaatGntqrBLx", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\t\n \talways all f: File | 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\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}", "derivationOf": "yEM5waPequks4w56z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:57:37"} {"_id": "eEf2NDHBoEPDaA6Ld", "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\n}\n\n// some file will be 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 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "bJpfR2eabqEQ4Ddgq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 16:01:25"} {"_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": "wRAE5yCztipAaKqas", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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\t\n \teventually some f:File | f in Trash releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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\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\talways all p:Protected | p in File - Protected implies after 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": "AFT4gFyS8m93CSFdF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 04:16:21"} {"_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": "stv8CTSXqCCZnmAa3", "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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t 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": "6Cg9xeYimBMMSDMG2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:34:20"} {"_id": "cmm2LDEkT5vhDzARJ", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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 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 since f not in Trash\n}\n\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 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:File | 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\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": "jGYKGwvwsnJ7JudFd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:52:00"} {"_id": "v3cYnXtvbqpw2LeJf", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( 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:Protected | f in Protected)\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\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 since f not in Trash\n}\n\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 after (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 \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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "usmGQ2nGu5iDw9yPR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:55:10"} {"_id": "aWtAqSiuqfnLAardw", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 eventually 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": "avpqR9viCzkQumKiy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:55:00"} {"_id": "ZbbvnFpE26NfqQo8t", "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 (some f : 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall p : Protected | always 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EkE5pQsJa5dbSnjQE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:21:07"} {"_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": "WC7eDjvh3WmFS9Mmw", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 ((some (File in Protected)) implies (historically some (File 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": "bap5WBSrpGKWqE6Xe", "msg": "This expression failed to be typechecked line 98, column 11, filename=/tmp/alloy_heredoc15372518828556732137.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 12:46:48"} {"_id": "avpkg9NyMHqmwpLQE", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | eventually 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}", "derivationOf": "TgvLog75MGE7o22wx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:11:06"} {"_id": "TbvGBEeKzyoogzadd", "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 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\t \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\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\talways all f : File | eventually f in Trash => 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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "b8t8HDQDKaaFSPjcn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 22:29:17"} {"_id": "sSXgEB6wKPtbq4dEp", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: File | always (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 after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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\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 f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "FXt89DnFuwbPRejgQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:31:35"} {"_id": "Tv65qxvexuHKykxCg", "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 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": "2020-11-5 01:41:17"} {"_id": "QFmr6uDekNKcwHXck", "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 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\talways no Trash & Protected\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\tall 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\tall f : Protected | f in Protected until f 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": "yedM45xfviaHLCA9e", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:08:25"} {"_id": "K7s3yzmhQGpXacQvp", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: File | always (eventually f in Protected implies f in 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 after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "bBmXG8uEZnpx9oGrX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:39:28"} {"_id": "DdREojs3jcKtbeEAW", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\nall f1,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": "jeCqWxsPYgRnBhsxo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 23:00:24"} {"_id": "RdpsxjtcnAf3CZuSK", "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}\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\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": "7bfih8JbYdiSEaNv9", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-12 23:38:14"} {"_id": "LNvFLdpg48m5Jy8BN", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno 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": "fw2JgmvjvqampAvqK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 02:48:36"} {"_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": "ZurSqtJuT6xtLaskf", "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\n \tsome 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 \tsome f: File | f not in Protected implies eventually always f in Trash\n\n}\n\n\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\talways File in Trash since 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": "ZScuhjsjH8DCo4q2c", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:58:35"} {"_id": "j289GoR7efCgSeLuC", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "WakmHvGhLY7dz5mP7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:54:16"} {"_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": "aePBdqXpQ9B6w9Bjv", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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&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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "gpcNsf9w75hnhxxCd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:26:29"} {"_id": "cBJK7SAaNPZfR6A29", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 some (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}", "derivationOf": "ebvLL4Ez8bry4jpGo", "msg": "& 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": "2021-1-13 13:13:44"} {"_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": "vARibhzcMv226W3S4", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "um8Bk6dQ9dcQPMnPc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:49:25"} {"_id": "CDLFrck2fQdN4YJFC", "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 all f : File | eventually f in 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": "AytXfMchBF2eXp9x6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:41:11"} {"_id": "JCRsPuhQPucq53r95", "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 historically(no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n before(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": "xTYaHMPxQntzGM7W3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 11:41:01"} {"_id": "tBrw2uQ6D2LscMKgL", "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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-27 23:48:29"} {"_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": "9fQgCeDT4x4Gd9Add", "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\n \tsome 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 \tsome f: File | (once f not in Protected) implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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 and no f.link)\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": "afbgGFbSHDtr24NzN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:12:43"} {"_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": "BhBWjiLh23kcC2hFW", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 Protected' = (File 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": "njrJKHN2trvb963vj", "msg": "= can be used only between 2 expressions of the same arity, or between 2 integer expressions.\nLeft type = {this/File}\nRight type = {PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 18:43:49"} {"_id": "RRxtvxwRZhg5ALQgS", "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 : File | f in Trash implies 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 {0\n\tall f1, f2 : File | f1 -> f2 in link implies eventually (f1 in Trash and f2 in Trash and f1 -> 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\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 \t\n}\n\n// if a file is ever in the trash, it was once outside\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "cLk4PeyDkvaccYTaT", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 17:08:03"} {"_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": "7FKKveHYfzNL35ydc", "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 \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\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": "NRQ8DBs6n2z6Tcdhk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:22:24"} {"_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": "wCkKvjeQENT5x2xi2", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n all f1,f2 : File | f1->f2 in link eventually implies f2 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": "SwgHvGBSjeoY5aJjj", "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-11-25 19:47:34"} {"_id": "RbrSyFGr5kdsNGbEK", "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 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\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\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": "PEEMxRb7MzaD7G24q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:20:31"} {"_id": "DTnBTe8tsnGqYcDwM", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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 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": "ZToshcfjEdMozwGHs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:24:30"} {"_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": "84fLtjiGBovxa9dq7", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually some f : File | f in Protected\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\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": "r7zTzvNzmDxQLrXd5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:08:29"} {"_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": "zEzT5f72uzYudEzyu", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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\t\n \teventually some f:File | f in Trash releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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\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\talways all p:Protected | p in File - Protected iff after 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": "wRAE5yCztipAaKqas", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 04:16:51"} {"_id": "EzWGFGPDKkhqJzZjT", "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 | eventually no f&File)\t\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 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 p:Protected | no p&Trash)\n}\n\n// the protected 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 | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "YkHRtqmi5D9Y4R56n", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:28:47"} {"_id": "xx28m6SNF4z7Hn2NW", "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 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\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' = 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": "ZHxFPnaz2EHHH4emb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-4 19:24:52"} {"_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": "bxReyJzdH8jvzvWS5", "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 no Trash+Protected\n \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\n always 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\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7FbLYePehZhjnwpCX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-9 13:40:11"} {"_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": "aKYxMGqJSaTvHNx5g", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all t:Trash | after 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\tall f:File | some link.f 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": "nTu9WhedT4knYv7Zg", "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-11-24 18:28:58"} {"_id": "5CSCLB4gxHjhpgMbe", "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}\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": "vdyFS6uHLKMQTM2aA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-3 09:02:26"} {"_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": "qDFjsTwqQakEQDoSa", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\t always (some f:File&Trash | 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 since f not in Trash\n}\n\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 after (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 | 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\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": "r335evM4jmoCQrWAG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:39:17"} {"_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": "bkjqbYxgzWwGCz4gp", "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 after some File \n}\n\n// there is always some file in the 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": "fxjWAZnqRBH82qXLk", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:40:35"} {"_id": "QH8kG3dMRFhCZw56m", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\t\n \talways 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\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}", "derivationOf": "yEfSQvjzZunSF2Woe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:56:20"} {"_id": "MJeSsL2irnGnjKsxF", "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 (some f : 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "f7hj5rXHmJhAweSYC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:20:25"} {"_id": "bpSQKh77o5ijdWNJk", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( f:Protected | always f in Protected)\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\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 since f not in Trash\n}\n\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 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:File | 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\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": "QHQGByuW5JGwFszXA", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 14:49:47"} {"_id": "95Eb6spPQmTwBssNX", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 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": "c2QPdyu84PH4Ya7aX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 18:50:11"} {"_id": "43a2hfZ5Z5977tCqc", "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": "6Cxa2SSbeJ4euaYvw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 11:39:40"} {"_id": "a88LNH6FzBuRsBd7X", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all f: File | f not in Trash since 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": "FtHZRZyQhfBSaqMNs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:34:58"} {"_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": "EFHWakmnHeNPqrRAs", "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\npred prop2 {\n\t\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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always some Trash implies (always Trash 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": "ZE2asn8zpCgjzEdM2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 17:59:22"} {"_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": "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": "fZvKrdZLYThxHwrnn", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\n}\n\n\npred prop6 {\n all f : File | (f in Trash implies always f in Trash)\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "z5GxGKxLH3Gritzqd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:39:54"} {"_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": "46mR29q6b2TDEmqHW", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "5JrmfHtj5SkTTQZwQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:46:08"} {"_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": "JvJor7nua6CBQaXjm", "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 always( 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\tall f:File | f in Trash implies always f in Trash\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": "DMcSPMEWbZo8fj26b", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 18:07:10"} {"_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": "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": "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": "HCfWdn7qSwD8gZ6dN", "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 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\talways no Trash & Protected\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\tFile in Trash since eventually 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": "v8pYQYKTedi8Fx4Kf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:05:14"} {"_id": "S3kHjfRrndXa9Avee", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p not in Protected\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\tall 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": "NdiF6MjyLozJRp8Zm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:54:40"} {"_id": "X9Zay2u8ue8pPRxsn", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\t (some f:File&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 since f not in Trash\n}\n\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 after (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 | 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\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": "2eMDJRThfpRR9K3Md", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:39:27"} {"_id": "BQk3o8ZYfNaRJ4GzJ", "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 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 \talways all f: Protected | f not 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 l: File.link | l 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": "p96htNBDphuQNx3HK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:24:53"} {"_id": "D4DBQ7aurcxmcufsb", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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": "jEBS8kzBdSu44kmpE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:17:32"} {"_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": "9q8cbrF2c4LugK7Ba", "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\tno File\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (since f in Trash releases 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": "AKA69ik42JwZHnSrH", "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-11-26 23:00:36"} {"_id": "NGqY3dnG2Nv6yThbX", "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-11-26 11:39:02"} {"_id": "6nCH2Q7F2XeaKw6Wq", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 always all up:File-Protected implies up' in Protected \n \t\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AmJ8yoTbXPPoTwAsF", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-8 03:35:59"} {"_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": "XR5PZx89kSZrW9c3X", "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 (some f : 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall p : Protected | p not in Trash' and p.(^link) 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": "Jy9TtE3uBLzYPt8LS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:29:07"} {"_id": "BoQk22mS65fbgdb95", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\talways all t: Trash | once t in Protected and t not in Protected\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: File | t not in Protected since t in Protected\n}", "derivationOf": "jjXPAQwRW7EASJfmf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:39:24"} {"_id": "SEvYjyoeCiyS2iMLC", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\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 & Protected | 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 => 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 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 f : Trash | once f in Protected && f not in Protected'\n}", "derivationOf": "jz86D5JBgFGLeTjaE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 21:03:29"} {"_id": "F7mM559MbXorxX5SY", "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 \t\n \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 \tsome f: File | after no f 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": "ZoZKrAp72iyzKEesX", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 22:48:04"} {"_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": "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": "ywtXcN7cGgN2uFhRL", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 implies 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": "2wTnb4AEEuhJDCiWY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-13 19:38:01"} {"_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": "FaakCfMQyvsDMgr7b", "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 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": "oc9byxqq9osjLph8x", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:13:10"} {"_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": "9tc8KJS3fvXe2h7nJ", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | once f in Trash implies always after 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": "egTq2tLTHC2SHMfhA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:55:51"} {"_id": "n8LDadKCB95mPNCjM", "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 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\tall f : File | f in Trash => after 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' = 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": "Le4rE7zAkHNxnEJsB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 22:34:19"} {"_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": "BgTzCWmtwESNusukJ", "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 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\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": "g4L35iKzWLRYGABqA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-4 19:18:31"} {"_id": "BE88vZMYpRK4RunP6", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways 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": "Gxkauc7ofvA5pEymX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:06:50"} {"_id": "n6WjGmHa98wZzMhqB", "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 (File & 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": "rCpa7gs5mJh9Kbej4", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:11:20"} {"_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": "wkBK8Mewr9ZXWxmKm", "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\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually 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": "BptaCGHbFo8wgZyYX", "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-11-26 11:41:31"} {"_id": "67QrAeN7je6QhdGRN", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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 (all f:File&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 since f not in 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\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": "fm2irvcdo6k33BvvD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:31:09"} {"_id": "DQvnswWHgqBXjCtou", "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 (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 : 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 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 : 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 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": "tY828XP9MGeYBa4X7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:37:42"} {"_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": "dJErc2r8yyeH6zjsz", "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 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": "nrL7tyL3DQFAkEeCJ", "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-11-25 17:03:07"} {"_id": "WcJEEBFtkBMAxBvSw", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \tall f:File | f in Protected implies always f in Protected\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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\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": "DzryaafRiTMJqMKdx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:32:30"} {"_id": "zWn8WnFH2xpfsmnHt", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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\t\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\tall f : Protected | always (f not in Trash 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": "zNSABoDbJq7xo62vx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:57:16"} {"_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": "gwstymL28u5pWy3hb", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | after some (f& 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": "vQhYNEAhQnsJJQejG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:28:12"} {"_id": "vdyFS6uHLKMQTM2aA", "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}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\n eventually 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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-3 09:02:18"} {"_id": "Zcz7HpTtwxeJ6kjzH", "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 (some f : 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\t\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 all p : Protected | p in Protected => always p in 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": "BQFvfSMMyBC7P4vvN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:32:18"} {"_id": "AvWTwyyCYHBrzeDLM", "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 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\tall f : Trash | eventually f not 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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "3NZdcvJZFax8MeSwC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:19:32"} {"_id": "DTgud25MXA99KF92o", "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 + 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 | eventually 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 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 always no Protected & Trash funciona, nao devia\n always all p: Protected | always p not in Trash devia funcionar\n}\n \n the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n \n every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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\u00e3o percebo\n eventually all f : File | always eventually f in Trash\n}\n \n if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in Trash nao precisa do always antes?\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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "Deek2toL5cfNDPoEb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:36:01"} {"_id": "aBg7pDvBCGpDMJbHT", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t all f : File | 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\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": "y5bJXPNCe3wyhcurx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:50:25"} {"_id": "23hMeYeeS9tWvJKWk", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | once 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": "JHQTRng36N8PkFDBx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:49:46"} {"_id": "swc63YWFCeoJd5Ysc", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 | once 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": "PwYhpcDmrKKTxcj6v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:24:43"} {"_id": "qibeEAzYyikrNrE5s", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected | always (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\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": "sLnFq4vPWpWbanQRQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:29:27"} {"_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": "bprAupRe75tWeauBB", "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 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\tall f : File | f not in Trash and f in 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' = 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": "oFr2oL7zB8jk5dHBX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 22:35:47"} {"_id": "TgvLog75MGE7o22wx", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | eventually 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}", "derivationOf": "YCazuStdqbLE36irm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:06:29"} {"_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": "aEf3mPcuLAeffNEq4", "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\npred prop2 {\n\t\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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always some f:File | (f in Trash) implies (always 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": "vZBibsDMoEbeDYEyN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 17:58:20"} {"_id": "croJii6R7habu8hdv", "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 (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 : 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 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": "mgawvb2v2SpTG9Q6x", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:25:52"} {"_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": "f4sPstxST639cnMYL", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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": "M2Ri2zRS9s54gX5iZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:59:50"} {"_id": "vehxGff6ZpoinLbKW", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n after 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": "Szc8pTYbHakTX9n6c", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:59:23"} {"_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": "8tnneBSNZgrHqRcxF", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 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:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\talways (all f:Protected | f in Trash releases f in Protected)\n}", "derivationOf": "nybwFhK7GcM87mK8L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 17:27:49"} {"_id": "ZLKBeTcrTp8CWeyvj", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually 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\tonce in Trash implies 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": "42YNTimfKModwcv4s", "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-11-26 11:47:02"} {"_id": "yrrcEmnBQqtBxLmdS", "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 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 always all f : Trash | eventually f in Trash implies always f 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 all f : Protected | always f not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all f : Protected | eventually 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": "2meDKyN9uP9fGECws", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:54:05"} {"_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": "GFayrD9rHqza9XLYE", "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 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\talways all 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 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\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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "KKeAh8kEDR4Y3467e", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:16:08"} {"_id": "QRfddRjvofe8RcZpX", "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 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\talways no Trash & Protected\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\tall 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\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": "YnY9Mmpq6T9TnYZkT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:11:11"} {"_id": "Q87XCSt58D4k9xvj8", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "HwGpPWmBePAmpri2Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:07:32"} {"_id": "TzpvWg7dHuPTqZksK", "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 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\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' = 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\t\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 : Protected & Trash | 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\t\n always File' = File - 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": "ThiRk5A6aLh34a5fb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:49:48"} {"_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": "nBfnBtwkMCahxS5hG", "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\tall f:File | f in 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": "WPb879cyAChXdgQqc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-11 01:45:04"} {"_id": "hgd5MC8n5C3tphAyR", "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 | eventually no f&File)\t\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 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 p:Protected | no p&Trash)\n}\n\n// the protected 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 | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "fniwSaPtr5a6MSeLW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:29:44"} {"_id": "g5cLdHu9CYacZGr8E", "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 + 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\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' = 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\t\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 always no Protected & Trash & 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 always no File' & File & 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\tno Protected & Trash until Protected & Trash\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "o2ioLWwgfBNmwmYPx", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-4 19:58:36"} {"_id": "jxTWDKD9tjNAqfNNc", "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\talways (eventually some 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\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 p:Protected | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "sSZ3oZxqj2hC3TT6R", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:10:53"} {"_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": "LmTFfswgGG437yaDL", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File implies always after some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EwLfiY68oBr2g8HrS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:19:39"} {"_id": "wibcNLXBM5bt5qiam", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\teventually (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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "F5qeNWqJYmKazuAwo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 09:29:12"} {"_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": "QGbBTmiP5XHcpYc7s", "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 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": "vPMjpXBFk2Z8T56fE", "msg": "This expression failed to be typechecked line 26, column 3, filename=/tmp/alloy_heredoc12158112882295086413.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:34:14"} {"_id": "q5GA6tL87AWMZqNbE", "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 always( 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}\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\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": "eZnfxgCfaAWpXzzHy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 18:07:32"} {"_id": "5d4G2JeCpdLjQxLCC", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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 eventually (some f : File | f in 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Pcz5roRQF8JpL86sP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:28:07"} {"_id": "XJzBckq5nms3ynKLj", "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\tbefore { 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": 1, "time": "2020-11-25 17:57:54"} {"_id": "REmKkFiPJWmQJbzX8", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : File | always (f in Trash' => f not 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": "pTXL6Dsz2YHLe2zoa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:39:02"} {"_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": "djDkYfZvCttpjvtWg", "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\n \tsome 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 \tsome f: File | always f not in Protected implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash since 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": "GToptnowxiKXS6mgj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:04:15"} {"_id": "yktrwS4f8QN5WMhc9", "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\n \tsome 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 \tsome f: File | f not in Protected and eventually f in Trash\n\n}\n\n\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\talways File in Trash since 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": "zgSgegLAsP7adpdqY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:54:12"} {"_id": "AxfAmLCMgudXhr2L8", "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\n \tsome 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 \tsome f: File | (once f not in Protected) implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash since 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": "T6i8EK9ZjPHeK9ejc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:04:29"} {"_id": "x3pK9i3caCMsDqdhB", "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\tonce (no 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 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\talways (f:File| 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": "s89JQ4B3NPB9LWk7z", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 22:54:34"} {"_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": "9bs97Gt6AjnaMLbQF", "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 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 File & Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all p : File | always p in Trash since p in Trash\n}\n\n// some file will be 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 Trash & Protected\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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "f4CujgJLmdh4zFRhy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:27:34"} {"_id": "K2j92s2McryAJAafq", "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": "2020-3-11 08:56:18"} {"_id": "vgtYpMkW2Trncnx9T", "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\tonce (no 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 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\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\teventually (some f:File | f.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}", "derivationOf": "bP7aLTPARMA5EsQxD", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 22:56:47"} {"_id": "2ksScbY5TopYEFzLS", "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\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 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 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4MYu7QkpXk9dS7rqw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:47:04"} {"_id": "wnCFaBL2wefciACYm", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 always all t: Trash | once t not in 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": "scTH6aaomWLfy2xzQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:46:17"} {"_id": "S22gXTSJ7TwN5mtfq", "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 + 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 no Trash 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": "AWF7csWAowdJi49mt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:39:29"} {"_id": "tqi8fRJdtxssZtAyT", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 | 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\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": "i2KAmbheb27msNsdH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:37:27"} {"_id": "oNoR5ifzgsmemXRgb", "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 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 \talways all f: Trash | once f in Trash implies 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\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// 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "wyCYmzvGu6LWbQKZr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 09:07:08"} {"_id": "DZMfybrwQvZDfajCW", "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// initially there are no files, but some are immediately created\npred prop2 {\n eventually 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": "XKoF88b4GoSQYXn3k", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:46:35"} {"_id": "vS68F2TBdL5y2XwKu", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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 (all f:File | f in Protected implies 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\talways (some f:File | f not 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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "gqdcT9ufddGSpWm2Z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-3 09:45:26"} {"_id": "7iKEdQRHo4MFEtZQD", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | always some (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": "v84vMDchEGWBfdC3t", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:06:40"} {"_id": "j8qg6wKGFEMd9vXBR", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File implies after some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "eNny5AEfbXh5sryRo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:19:13"} {"_id": "DNqW8HDhSnttWd766", "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 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 f:File |f in Trash 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": "BYJCvT4be3aQW3NZi", "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": "2021-1-14 00:15:52"} {"_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": "2bchxJd3tPpX5X8MN", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | eventually always f in Trash implies always after 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": "ktAuLjrBRp3J7cdK2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:55:28"} {"_id": "sNPdMnuPFcKmSRaRi", "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 (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 : Trash | once f not in File)\n}\n\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 | after f 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": "XihvR2GSxtKqY3a75", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:28:31"} {"_id": "uAt3KAPwP32HjgKTo", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually some f : File | f in Protected\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\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 \n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "L837kEAQuTLuA2HnJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:09:58"} {"_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": "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": "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": "d3PCNeheCQ37uMCdj", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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 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 (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 | 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 always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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&Protected | 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: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 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": "rm8Fz9TKvPzeCTK33", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 01:05:54"} {"_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": "2js6dSN2dk4HhJmbF", "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\tsome File eventually inTrash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pEp7T5z7oiqbLMt3y", "msg": "The name \"inTrash\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:38:59"} {"_id": "MmqLuAEbRhR6eaKwJ", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\t(some link) implies (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": "BWT2fE6xB9F58QhiZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:06:31"} {"_id": "pBZRaW9oQm2d7EEHR", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File until (eventually 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": "a3ZasZ7AbBBrKRvwS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:00:39"} {"_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": "6HP99P95cvk9waGAT", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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\tonce 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\tall f: File | always (f in Trash implies before f not in 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": "k52WAA5pCMshtWFQS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:07:16"} {"_id": "GuxsvSQLqL6z5TjBY", "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 before 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": "MzJ27M5M3GnYTMA4k", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:35:50"} {"_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": "TmXecnwXERfKXiL78", "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 + 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 | eventually 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 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 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "tgNpf86GyTfom6bW5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:02: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": "sCtriaz9gSnMy5Suj", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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": "HX7TbzB6mtwEwheNm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:40:34"} {"_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": "oWAGBxMkpX4fFrao2", "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\npred prop2 {\n\t\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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always some f:File | f in Trash implies always 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": "E3NFeSYg32yrF6eBu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 17:57:56"} {"_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": "JG67eSB43T8s9Jzn6", "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 + 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\talways some File\n}\n\n// some file will 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\talways ((some Trash) implies (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": "9oBCPg4JoyeASroSa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:58:05"} {"_id": "ZmCgjnm9Nyr4uWg2S", "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\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\talways all f : Trash | f not in Trash until 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": "kwEbjdKvDMMyfFxmu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:46:00"} {"_id": "ak3NnGCYf9tQLsD49", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t all f:Protected | always (after 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\n}", "derivationOf": "LPptqCQYEE8pYFPNG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:03:34"} {"_id": "uw4PkxHHiCQ4D5Kj4", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "CcKFd5DKNZ4c2dWqB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:06:58"} {"_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": "fBqeAJDCiCpoHsGzj", "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\t\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 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": "irhMQjoRCPgf8mjr6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 12:59:41"} {"_id": "HtECphvZ8iWhezvRx", "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 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 \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Trash & Protected\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WgKvtCz5vebc5zR7s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-27 23:58:42"} {"_id": "e4kHzoQX9hv3ARhEP", "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 Files 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": "L5JK9yXNd8WczhRmB", "msg": "The name \"Files\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-19 19:50: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": "HJWR575PocFZ5jvXZ", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all f: File | f in Trash triggered 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": "a88LNH6FzBuRsBd7X", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:35:26"} {"_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": "WL9kxXCPezFy6vgw2", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\talways (all t:Trash | after 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\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\tall f:File | always (f in Protected) since 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": "nWK7dcPT6SSTfdBDX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 13:19:03"} {"_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": "eYJ2WPMwgZ7RQW8Pq", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |eventually (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": "xov9tuFinxpesfQoc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:11:30"} {"_id": "2Qm2j7aMzHwjwxytv", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 and 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": "JHxMCXwkTCkFg4azv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:22:54"} {"_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": "vQhYNEAhQnsJJQejG", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | always f in Trash since after some (f& 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": "BwPhyrd6F3Fr7zhGc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:27:53"} {"_id": "daPSQmMKa2uJ7ukZn", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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": "7nZb7X3CWrN2Wvwge", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:49:18"} {"_id": "Mt9JgkgDBjTXfbwWY", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually 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 {\nalways 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 {\nall 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": "uea9qkzurfMX7cZCS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 23:03:39"} {"_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": "WJYMF2QKpjTQJPcMr", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t (some 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "42hXwBN9a5W8qZ2hW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:52:54"} {"_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": "o7i7tTzprhomXwEKW", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n \teventually no 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": "qR7RsvfeaQ5273Y9A", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:10:24"} {"_id": "jjXPAQwRW7EASJfmf", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\talways all t: Trash | once t in Protected and t not in Protected\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: File | t not in Protected since t in Protected\n}", "derivationOf": "ydYvhPt3wbi2Mifoe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:39:21"} {"_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": "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": "8vaaGGmTuwkoN27T4", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - 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 : 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": "3LkvbQFnzopXqfuFa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:48:06"} {"_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": "kS9KmXCCffxTWLSHA", "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 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\talways no Trash & Protected\n}\n\n// the protected status never changes\npred prop10 {\n\tall 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vrsn8WQMToZeAotNj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:01:37"} {"_id": "bG7DdcDXycuGkjZCx", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (eventually 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": "b9LA9vZJKsn6P88XK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:06:06"} {"_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": "TaMMv2pd4iZY5GCFM", "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 + 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 | eventually 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 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 always no Protected & Trash funciona, nao devia\n always all p: Protected | always p not in Trash devia funcionar\n}\n \n the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n \n every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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\u00e3o percebo\n always all f : File | eventually f in Trash releases f in Trash\n}\n \n if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in Trash nao precisa do always antes?\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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "whJosMNYKx7RZQv78", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:47:50"} {"_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": "pBknZzgrAPKiMRC8S", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at no time 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\teventually (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": "xmCWYQ5Mp2SGZR4rL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:18:11"} {"_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": "gqTZ8Jcb27vwR9NPT", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 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": "vCSwKnzDg5CCs3zvr", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 23:06:22"} {"_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": "airizy5vJAqYd4xeG", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\tsome (File - Protected) implies ((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": "LAdeCajAbFbS9rtjn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:21:45"} {"_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": "zvCETwq2HFFKS9YSS", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\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 since f not in Trash\n}\n\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 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:File | 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\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": "JRignmCgF9RBGdxJx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 14:50:23"} {"_id": "PadQrYvfB9Aw42QGE", "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 \t\n \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 \tsome f: File | f not in Trash implies after f in Trash\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\talways (some f: (File - Protected) | 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": "LPhnitSJSYXWDQmib", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:00:14"} {"_id": "xGmZLm3xfSsijrvoK", "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\talways 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": "24REb2qJWpGWfqGRf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-12 22:05:02"} {"_id": "Ju3bMtfQQkH67ZJSb", "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\tonce no Trash and once 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": "73KXTJu5Bb7JiR3jo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-19 10:27:04"} {"_id": "HG6CZQYxNJeFjYTgY", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\talways (all t:Trash | after 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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\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 not in Trash) releases (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": "KEPujWnzranBmzoFW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:39:15"} {"_id": "qb5jZvoc7BTNDhwx7", "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 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 | eventually f not 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\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 eventually some f : File | f in Trash => after (eventually f not in Trash or 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 always no Protected & Trash & 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 always no File' & File & Trash \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' => 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": "neBZ7hwWaMk2rJmkH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 01:04:02"} {"_id": "yKLtQoFBmwdJYRfWR", "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 some f: File | eventually (always no f in Trash implies no f 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) since 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": "BkjQXiF35An2S6SbX", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:58:45"} {"_id": "uQzKWo23SXGjWoAsY", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\t always (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\tall f:File | f in Trash since f not in Trash\n}\n\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 after (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 | 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\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": "aHf3sdiovgopRAbhF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:40:01"} {"_id": "7PsEwsNwhrj3eC4cv", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 implies (eventually f.link&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}\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\tall f:File | f in Trash since f not in 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\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": "u7JjEciD9ht5izN5Q", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:22:45"} {"_id": "Cp2NfxNMiuEM35nud", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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": "DxmjF3Z7BZXBhzEiG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 13:09: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": "2TjykNmDQHPZQfQg4", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at 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\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// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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\tall 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": "TYeZ2BWvPtz4K9rrT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:52:46"} {"_id": "vh8BXeRonuZkGZu5S", "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 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\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\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\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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "BbjuwX944mdQDdRYe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:18:11"} {"_id": "yvf6Fu66vC3ihfuXp", "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 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 \talways all f: Trash | once f in Trash implies 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 always all l: File.link | releases eventually l 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\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\tonce 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": "dCo4JNfAKNvy84ZA7", "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-12-1 21:53:07"} {"_id": "eZBFTFkkPGZxwbs6a", "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 (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": "wqLL4YBjvryKLSgtp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:22:34"} {"_id": "XuKjSo4GygsfGuWR5", "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 | eventually no f&File)\t\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 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 p:Protected | no p&Trash)\n}\n\n// the protected 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 | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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:File | f in Trash since f not in Protected)\n}", "derivationOf": "8QFKLjEfhsPYLC5Dv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-27 16:02:15"} {"_id": "goBHkM2LdZCMLTQaE", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig 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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\talways (all t:Trash | after 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\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": "QjMkJsFLqsmaZti3N", "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/Trash:File"}]}, "nodePositions": {}, "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-11-25 13:15:12"} {"_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": "ea5Ez56j6zKwcGFtt", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at 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:file | always 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": "jv6zqRkXQkmqSvovL", "msg": "The name \"file\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 19:43:44"} {"_id": "FcPnEnHwvJ8DPxTSJ", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "Cf22NDqQBGDCYSFMQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:51:50"} {"_id": "2bJZbqBxYSSzGGbzP", "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 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": "5iRy3JZw8Z5Zfq8c4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:33:51"} {"_id": "4jS3g9tWz2xJMF7Yp", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kp8isditwY4wf6oA6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:31:36"} {"_id": "MuXhJiwEBWRZoMAWe", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Proteced and 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": "FBZAjQPMGCSE4DLWT", "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-11-23 23:31:20"} {"_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": "JcT2idqdmHby5jbnx", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected | always (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\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": "NmddHWkMCJHf7YH5u", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:34:01"} {"_id": "v9vmPb7ammvNoPffL", "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\n \tsome 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 \tsome f: File | eventually f in Trash since f not in Protected\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash since 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": "iddssJWXoRPkeDBPX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:01:58"} {"_id": "rF4SQJYLsqE7C8frR", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t(no File) until (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": "8wuk8Cbv7Wabf28Sc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:33:03"} {"_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": "3vJhZRBiknmk2Fpy7", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually link.File-Protected 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": "m7LNfPxm53LKE4EGS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:38:52"} {"_id": "gDLM4xqZZCmNs577N", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | eventually f in Trash since some (f& 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": "egK8Tu8eHm3at957J", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:25:27"} {"_id": "RajgWK6HmY5WXdNv6", "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 historically (no Trash and no Protected)\n\t\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 (some 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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "WDa5x2Y9pNtszhaMa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:28:45"} {"_id": "QpXw3xn3oiN2uXkFi", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | once f in Protected 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}", "derivationOf": "DzhprcbrcGQis3Tbr", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 22:47:32"} {"_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": "nrL7tyL3DQFAkEeCJ", "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 & 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": "iYRoFbhfsZX6GZeZw", "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-11-25 17:02:52"} {"_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": "sPQMeLkFBtWSsQnQu", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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 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 (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 | 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 (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": "sNBt6cnyG2RS4eaoP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 01:01:59"} {"_id": "yzcaG9b2NWqLuFTRz", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "4xdrGJQnJNJQMHfq8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:08:11"} {"_id": "4sHLFriWdPedszjKj", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 (Trash 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": "ZnA6tYME6DHrzpaYi", "msg": "This expression failed to be typechecked line 41, column 14, filename=/tmp/alloy_heredoc18271146392164356429.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 22:38:23"} {"_id": "YfzcSEjnrbtzHcLJ6", "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 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 always all f : Trash | eventually f in Trash implies always f 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 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": "FGNX5r2eZGNhXmnAc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 21:34:51"} {"_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": "3mfqjZBkvJSH2Ksd6", "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 Protected\n \tno Trash\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": "QPHSxSiSbsaAFiLiQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 19:33:10"} {"_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": "iHFHkXu9zD6skcGY8", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (some Trash implies (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\talways (all l : link | eventually (File.l in Trash))\n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "XtDD43tTQYBJHbsgG", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 13:35:56"} {"_id": "PRYrcrJmoGggBGPbH", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "uw4PkxHHiCQ4D5Kj4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-7 10:07:01"} {"_id": "oskCzFPFHd49DNQRc", "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 (File & Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some (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": "TTFxmGy2LFtHmcJEA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:14:13"} {"_id": "Z6gGveqk2QcJAAttG", "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\tonce (no 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 f:File | f in 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\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": "yEi8aXCKoq96R6cbp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 22:52:44"} {"_id": "sxhooRqiKeL5y9A78", "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 + 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected | always (f in Protected until (f in Trash => always f not 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": "JcT2idqdmHby5jbnx", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-8 00:34:37"} {"_id": "p96htNBDphuQNx3HK", "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 \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\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\teventually all l: File.link | l 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": "iSuEMmo4p8cNhcMEk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:23:22"} {"_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": "rAxbzqjXGa755yZbj", "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 Protected\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": 0, "time": "2020-11-24 19:32:12"} {"_id": "v4sAkdHwuYQios3L3", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "bXzB7mMkHQzaEGqQf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:15:15"} {"_id": "kKckPH9YYubMMZy8z", "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 no Trash+Protected\n \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File implies eventually 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": "ou8h4mYimh9BzPab8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-9 13:36:25"} {"_id": "ukKyFujLa2Dvr9zzh", "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 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 always all f : Trash | eventually f in Trash implies always f 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 all f : Protected | always f not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all f : Protected | eventually 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 always all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "TWML4mJ9z4yxMutiw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:01:07"} {"_id": "qkgocYGZ6H8zzqARB", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-Protected | 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\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&Protected | 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 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:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "sMFYnbuTiyEtf8PY5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:04:56"} {"_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": "jNazScQksxYRpHZAB", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | eventually p not in Protected implies eventually p in Trash\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "RPSktEY2bKy6C8cBr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:58:03"} {"_id": "NJgA46eX6jHTzK3TW", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 releases 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": "8ZosTdKugDXSvYJPT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:43:21"} {"_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": "xQcirjMhRZf8KKbYk", "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 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\t \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\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\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\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 always no Protected & Trash & 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 always no File' & File & 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\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": "h8DRqHzrLPptf2c2H", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:22:33"} {"_id": "ncxB7SoEZQGhkAzAf", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\tsome f: File | always (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": "cqXwX9nTkzb2q5s57", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:20:54"} {"_id": "8TjhjB5EjnL5xmAJz", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "mz7M7urRrmBJwemTx", "msg": "This expression failed to be typechecked line 67, column 2, filename=/tmp/alloy_heredoc7288251083556150141.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:28:51"} {"_id": "4rqg9QKo8K2SrZhcv", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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\t\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\tall f : Protected | eventually f not in Trash 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": "zWn8WnFH2xpfsmnHt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:58:26"} {"_id": "TAmuXKRJQHbs8t6cv", "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 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 \talways all f: Trash | once f in Trash implies 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\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// 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 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\talways all p: File | eventually p in Trash implies 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 all f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "WwKi5o7Pgof6owo6D", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:17:24"} {"_id": "KSSJJ9pAq7PXqufSP", "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": "7ESfSb32R6tTTpKcG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-9 18:14:51"} {"_id": "MuScyhbX9yS65APnH", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after 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 always 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 always all f: File | f in Trash since f not in Protected\n}", "derivationOf": "5iccYPC27nNiGEMYn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:50:55"} {"_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": "9dWtAyaRPAgb3hgpH", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 | eventually 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 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 eventually some f : File | eventually f.link 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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - 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 : 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 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": "o5oEGeieMJgvZur9o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:03:38"} {"_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": "6oPsugvZZ3zGt2rDo", "cmd_c": true, "cmd_i": 9, "cmd_n": "prop10Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "fwwR6ZDiKsJfbdqvZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:38:55"} {"_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": "YMLbxKEL3YidMaC9E", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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\t\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\tall f : Protected | (f not in Trash) 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": "sGRFHBP8njaeWZHju", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:55:36"} {"_id": "Kdx5Fqxs7E3jNSop9", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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:File&Protected | f in Trash implies always 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": "NcFptEEuyYZLxgC2B", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:46:24"} {"_id": "b4wuyX9iNqRgBBStq", "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\tno File\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | once f in Trash implies releases f' 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": "rqWNBfwbzk8TLp9Fa", "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-11-26 22:58:01"} {"_id": "2ZbEHFdNoxdGTARiC", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "hpuqk2RnjiNQHfLt4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:21:00"} {"_id": "XGCzDny6ovC7W66dy", "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\n \tsome 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 \tsome f: File | eventually always f in Trash\n\n}\n\n\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\talways File in Trash since 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": "swtnekqXM4JjrXbXW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:57:25"} {"_id": "fQAwsGWKMickRTDpx", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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)", "derivationOf": "iM3jcy9c6bSPDPMPs", "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-11-26 13:30:46"} {"_id": "PCAoriZnHuS3yaD5N", "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 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 (File & 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\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": "fTkt6N7HmxKxrogEF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:17:06"} {"_id": "kumbPuFMX3EX56MJp", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File since some File\n\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 some f : File | eventually 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": "Xh6BwHbtNANEZMbgZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:04:32"} {"_id": "ffEziq9oLWd5BDGHu", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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": "LhnsxbdZWHDNYLffi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:46:46"} {"_id": "Tbd4YkCjP5GmLwbY2", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\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 & Protected | 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": "4CWN7DtrKZycHGTXs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:41:19"} {"_id": "KuAMeRtPsS4hP4PhQ", "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 always( 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}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Rm86ecJMyrEqSEAQB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 18:04:48"} {"_id": "ke985bD6fvXAC8JBE", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually 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 {\nalways 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 {\nalways 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": "NA9PKcNWfsYrTzzTn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 23:04:05"} {"_id": "pCqACFnxapn6HhhRe", "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 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 | f not in Trash and 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": "ZnvbN4SERi4H2dFdW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 22:30:48"} {"_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": "zn8L8oERkEjA9NHFs", "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 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 File & 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\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 Trash & Protected\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 + Trash | 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 always f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "fmnqpQQq5SvLL89s2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:31:55"} {"_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": "bNE7jtzJmxk9osNoG", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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": "4nykCCrfSuJQvq7qe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 13:40:21"} {"_id": "5rAdA6oReyfPuT3k5", "cmd_c": true, "cmd_i": 17, "cmd_n": "prop18Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "v6i62spGg2HFDpD2E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:39:27"} {"_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": "hHzt5JvkzP4sHtM7f", "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 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 (File & Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome 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\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\tall 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\tall f : File | eventually f in 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": "Yp7JPL2MGh2sR2GFG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:33:28"} {"_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": "xDaD2DRf59tjNuSRY", "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 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\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' = 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\t\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 : Protected & Trash | f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n \talways (no File & Trash => eventually some File & 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": "3Wj4kTdTigrpKYMAR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:35:54"} {"_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": "WkghwLwBLDR9ei67q", "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 \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 : File : f | in Trash => always f in Trash\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": "AHxFbteKn4Spb4R8P", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-2 20:13:54"} {"_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": "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": "yq8CZxrsjqY9pohiE", "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 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": "LbhscFb8swg5MYJzz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-27 23:49:21"} {"_id": "Lgjbx4j8HCtqkJKs7", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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": "yEs6q37SaXpqzsvKY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:57:54"} {"_id": "XneCHe9msFC2q4YuC", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected | always (f in Trash' => always (f not 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": "RjCaqju6T2QLRpKDa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:37:23"} {"_id": "7AMZZexFDthdaABTS", "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\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\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\tall f : File-Protected | after f in Proteced\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "B6T789diHuTuDpwwD", "msg": "The name \"Proteced\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-19 20:11:40"} {"_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": "G9tbbKTJGCzKW4b7N", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link in Trash\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 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": "8rwJ2pw5aNpusgToz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:20:22"} {"_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": "PF2tjiLu3GK8EPwho", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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 : Protected & Trash | 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": "msWokhABqXLC6goCu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:34:32"} {"_id": "EKxeibsivCiB9s5qT", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "vCRBMWTTFozEdhCnw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:26:18"} {"_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": "Da2w6hzDQhiEhbhbs", "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 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 (File & 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\talways no Protected & Trash\n}\n\n// the protected 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 - Protected | 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-Trash | eventually f in Trash => after eventually f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | eventually f in 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": "7JBD4i64gNZjmih2R", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:31:00"} {"_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": "xy3Lk3uAnHyTHPSpF", "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\t\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\t\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": "XyigaKNhmDA4b6tc7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:07:44"} {"_id": "o52nuBCmtYiNSjgsX", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually 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.link 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": "P39yawp86TdtCRzxB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 02:53:22"} {"_id": "BSFHEeYDo4WDHfhEz", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\talways all t: Trash | once t in Protected and t not in Protected\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: File | t in Trash since t not in Protected\n}", "derivationOf": "Wuk6WZDRN7BgR3bnF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:54:09"} {"_id": "j58ueRc4iqfemYviq", "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-Protected | 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 | always (f in Trash implies 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\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8Q4FjAoZjxJc72qjP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 16:26:50"} {"_id": "H7CBaTGwC5XieLJdM", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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 all f:File | historically f in Protected implies always after 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\n}", "derivationOf": "NRDbtkjCxgZL5DgDT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:04:56"} {"_id": "9wzqRKwNAChxq3PYy", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n all f: File | eventually (once f in Protected and f in Trash) implies always (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}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Mkvfd3JaHevGtzrh4", "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-11-26 22:42:00"} {"_id": "ZDFp7YNeLNjshoica", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\talways (all t:Trash | after 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\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\tall 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": "9pXA3EGBFFgt5qzxo", "msg": "The name \"protected\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 13:17:46"} {"_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": "Pdum3zgr2dvc4KxBD", "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 (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 (File in Trash implies historically 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": "8BSL5S8CYHf5tjT2b", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:23:21"} {"_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": "M5X4FwvBhJiZv5Dam", "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 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": "QngpeR54y7oTX9QZS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:09:15"} {"_id": "avpqR9viCzkQumKiy", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 and link.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": "nr95vCYytBcgBfEMd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:51:24"} {"_id": "bggmnpfw4Thq4sigH", "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}\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 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": "5CSCLB4gxHjhpgMbe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-3 09:02:39"} {"_id": "AwHcAA8QFv9MqQ27e", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-Protected implies after f'=Protected\n \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "R5gcehEaenFnQiHKS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:39:23"} {"_id": "cLk4PeyDkvaccYTaT", "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 : File | f in Trash implies 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 {0\n\tall f1, f2 : File | f1 -> f2 in link implies eventually f1 in Trash and f2 in Trash and f1 -> 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\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 \t\n}\n\n// if a file is ever in the trash, it was once outside\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wDPbjScxbwThcBpgz", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 17:07:46"} {"_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": "9exiPdFQC4NK3HCEg", "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 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\talways no Trash & Protected\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\tall 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\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 File since f 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": "3x4wXj5FvYL47D3Hv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:17:23"} {"_id": "kSAKNN9tNjKsuEhYH", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f : File | historically f in Protected\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\tall f : Protected | f not in Trash 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": "4rqg9QKo8K2SrZhcv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-3 00:00:58"} {"_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": "Ye6k9WgSfb6coqJi4", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 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": "iWz23DFYWPC2KWFHc", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-8 03:42:37"} {"_id": "r3aytxTzdfG33oLoN", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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 all f:File | 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\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": "8bBYks7d6frM2KvRb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:04:17"} {"_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": "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": "Wuk6WZDRN7BgR3bnF", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\talways all t: Trash | once t in Protected and t not in Protected\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 Protected since t in Protected\n}", "derivationOf": "Q36Yv4KzdESTaSW4S", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:51:45"} {"_id": "qmexSSMdeGzWagBDq", "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 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\tall f : File | f in Trash => after 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": "GQhWzc9jrwhQFcdwe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 22:33:15"} {"_id": "d9fhTxXTq6QYZTagC", "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 (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 : 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 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 : 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 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 Protected realeases f in Trash)\n}", "derivationOf": "myMmegYPq4SqASWGt", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:34:53"} {"_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": "Mkvfd3JaHevGtzrh4", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n all f: File | (once f in Protected and f in Trash) implies always (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}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4tikY4q5F4BgtqwNs", "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-11-26 22:41:49"} {"_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": "pbieSKJDSgvZQ9Aca", "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 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 (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": "Ls3M5Lzq9qyBmEC4J", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:59:33"} {"_id": "fKSuckAmMj4rzosEn", "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-Protected | 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 | always (f in Trash implies 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 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": "obpcFhpsfkv6mqQWD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 16:28:45"} {"_id": "berynqGSrKpmhQ77X", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually f:File | f in 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": "Y96Rq73iCA7ZGtdr7", "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-11-25 20:02:29"} {"_id": "ibSP4XXeNFtSj5bbR", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at no time 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\talways (some (File - Protected) implies ((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": "ycnyeGXiTMBRPr3TX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:25:38"} {"_id": "ANwymr8vjRN4rTGdu", "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\t\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": "mSY7CHDbFYR92d2qT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 12:58:51"} {"_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": "SR4THKErPirKcqEgc", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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": "S3kHjfRrndXa9Avee", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:54:46"} {"_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": "82n9q9WQoT2KfdLDg", "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 before 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": "LFTo7D6P48saKdk3C", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:35:17"} {"_id": "qey8rJWqMjqeEgm8D", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n \n always (all p: Protected | always p not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n always(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": "kLvAP5jvp3p3Gktdp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:27:27"} {"_id": "thXpBjKC9Eby22HTs", "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 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 always some f : Trash | once f in Trash implies always f 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 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": "PHCiLgNmrcXBdQukx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:31:43"} {"_id": "E3WeZXB8sxftba6cz", "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 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\talways no Trash & Protected\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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "2zz45wToooJzr6W4y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-28 00:22:25"} {"_id": "EFeHWM7hGdCgENR9i", "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 (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 : 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 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 historically File 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": "r3SqBsT8rK5HcyLQ8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:27:01"} {"_id": "Xk8GGKEXnudLgaPS3", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File | (a 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": "tFyejSTPZkmBRpyR6", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:38:13"} {"_id": "bTqLGwhq7ppy5SMsv", "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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File-Protected | f not in Trash and after 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": "qnLrdCqgBERQ9zMh3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 19:58:08"} {"_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": "rX2jfwsiJ4ST6bd7R", "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 \thistorically (no Trash and no Protected) and\n once (no 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 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": "8GpP2FqC4kmZEuHzZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:19:37"} {"_id": "KvzmGmsfpbRioCf8M", "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-11-25 14:58:59"} {"_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": "zM9zsaztinr4kcoDb", "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\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\t\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": "huTu9vqKb3xyi4tha", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:32:24"} {"_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": "rNEGFdrFA3pMQ7b6Y", "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\t\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\t\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": "kqmcCtw94SBES2Ziv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:06:53"} {"_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": "zrfGtmEGQLXw9yyK6", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 | 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": "CQm4YPXEHhTsvMKZx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 00:00:34"} {"_id": "oc9byxqq9osjLph8x", "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 no 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": "GwLt2Wa44YWFWFKCW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:12:42"} {"_id": "tFbTfjDTdZzxE2njy", "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 + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically ((no File) until (some File))\n}\n\n// there is always some file in the system\npred prop3 {\n\talways (some File)\n}\n\n// some file will 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": "NcdPrj4SLf8RyhhYP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:51:55"} {"_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": "yiGpx9u9fo7Jka9D6", "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\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": "7gDtRSrpP6rRv8MoA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:16:12"} {"_id": "pY2XwPE9MQGzZ78Nt", "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 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 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 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": "nW9wd887AHw4eLtaF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:37:50"} {"_id": "x7sDhgcywTcQQnP2G", "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": "WNeCW4HAupeN6Ye8F", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:02:39"} {"_id": "TjNTP2jnxjZWKKgAt", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "5Xz3r6eWbh77mBtWm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 08:39:05"} {"_id": "DHJZ4C4HmmJi9AB5i", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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 Protected&Trash 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": "TSdor2eCbazcHk68b", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 23:05:27"} {"_id": "ZBcDZT24q3ZxbLYpm", "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\thistorically no 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 Trash releases 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": "EqoNbCBbNWTYqiffc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:47:54"} {"_id": "3AEmKfedXioG4Sx5W", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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\talways (all f:File | f in 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": "jMc9tuhEZHeKZWdnB", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 20:10: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": "Hr9h4NK6zKGTf4Tsa", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 & 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": "qdt9m7a49jDm9LjKd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:35:26"} {"_id": "AfvWSnj8FnE97wPfx", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all p: Protected | always p in Protected)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3f4EvXfrFzLYszx5G", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:19:01"} {"_id": "oLqnfMLhXpTSSNvZE", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (f not in Protected))\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t( all f:File | f not in Trash implies 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\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": "yYZPJYvyP5nAr3SBP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:42:19"} {"_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": "fPny3qJvjkoor9j9t", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f:File | always (f not in Protected implies after 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": "vehxGff6ZpoinLbKW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:00:38"} {"_id": "po2KsAE8xsQF9y2Jg", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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+link.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": "Ypc9ErqzA5fyuN2Mm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:50:51"} {"_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": "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": "Gp9JjbGbYAfKANBde", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 link in 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": "52BpeWaQ7QmGte7vR", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:42:16"} {"_id": "8dGsMmTLHjnmmJkSe", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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 & Protected) | after no(f & Protected)) \n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually 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": "d9nwbb2dy72jotmcv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:52:23"} {"_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": "CQm4YPXEHhTsvMKZx", "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\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\tall p:Protected | always 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dhtSWZ9Q4u6J2PHBs", "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-12-13 00:00:27"} {"_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": "8ogDRwGrnd22zixv6", "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 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 (File & 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\talways no Protected & Trash\n}\n\n// the protected 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 - 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\tsome f : File & 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": "2qtyNAacu7zcw7pzE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:28:21"} {"_id": "TrgAqiXfCH6gdWc23", "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 p: Protected | p'=p\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4L4uJLDnsLTYP6keC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:54:21"} {"_id": "adFi4qq7TgNhcj3g4", "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 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 | eventually f not 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\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 | after eventually f not in Trash or 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 always no Protected & Trash & 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 always no File' & File & Trash \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' => 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": "Bq7eFS6G5zPfmQCR9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 01:09:21"} {"_id": "6GwAK9HfFPdxN5hZA", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\talways (all t:Trash | after 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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\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 in Trash) implies ((f not in Trash) releases (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": "zbuxyN4EbK5CTkYCa", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 19:42:48"} {"_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": "JDq85JQySFYLScu3m", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\talways( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t(all f:File&Protected | always after 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "Wjz5cbEi6YasADyfm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:27: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": "jLjaT6NfMsz7ECJwp", "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}\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": "6A4eKTy7vomvGQQQf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:10:46"} {"_id": "dEMgCFNJdoc3R8LF6", "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 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 \talways all f: Trash | once f in Trash implies 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 always all l: File.link | always eventually l 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": "MyvmrBJRwDoN7qeZo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:39:13"} {"_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": "BqQoP5CBLukLoFggP", "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 \t\n \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": "x6Pa6k5iqPPwiB39H", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:35:29"} {"_id": "R8G5utXaQawFx8YqZ", "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\tno File\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 always Protected\n}\n\n// the protected status never changes\npred prop10 {\n \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always (File' = File - f since f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HfDiHwqbDvtMw6vHZ", "msg": "This expression failed to be typechecked line 63, column 3, filename=/tmp/alloy_heredoc11393273041395541419.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 23:18:40"} {"_id": "R3vRxo3AZ5pQoaz8n", "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 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\talways some f : Trash | f in File until always f not 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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "tuzey5LNStpmYaELE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:13:37"} {"_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": "Tqpr9rttPZBC6Ymb5", "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 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\tall f : File | f in Trash since 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": "C9YtJmqQSqi9i2Seg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-27 23:55:11"} {"_id": "rmSo6ai4cW9rYnDwZ", "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 eventually (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": "mzuRyzPMCEzpcZJXt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 17:15:54"} {"_id": "jnKqkf5ohooaD68Qa", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n \n always all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always 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": "24n8Gm3GWdQ6vNupY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:30:34"} {"_id": "iu28iZ2zfjMGXGc4w", "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 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 \talways all f: Trash | once f in Trash implies 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\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 all f: File | 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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\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 f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "wQMeoKrj9fSHM4tpm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:29:01"} {"_id": "zF9jyBtZBnLukBJoA", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\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\tonce Protected implies always 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": "FqrNg8exXeNcTpvTW", "msg": "This expression failed to be typechecked line 73, column 2, filename=/tmp/alloy_heredoc17137457668037135370.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 23:22:56"} {"_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": "39ghxD27cHXvfYiBm", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: Protected | always f not in Trash and always f not in File\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "eP5fFo3GgBJnZYSBh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:40:27"} {"_id": "BriQdbkbQQssbr5x3", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "w5PCh2sAkRZuSx3PS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:15:30"} {"_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": "JhTLennjpWqJzpjXx", "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 + 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 | eventually 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 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 always all l : link | eventually File.l 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 all p: Protected | historically p in Protected and always p in Protected\n}\n \n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "YvHtpZkqFdM6YgvJD", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 00:31:41"} {"_id": "Z6M5XzHNXysbxneyv", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 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:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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 Trash releases f in Protected)\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 releases f in Protected)\n}", "derivationOf": "8tnneBSNZgrHqRcxF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 17:28:22"} {"_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": "fZQcqRBiXQCpiKxqf", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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' )\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6fTeiWppCJDPLKw5k", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:04:28"} {"_id": "oMwvgbeF286cfSQAA", "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 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\tall f : Trash | f in File until f not 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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "sGpfzDwswMukrqTwM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:13:19"} {"_id": "GnGhcn6n8y9PQD98X", "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 all f:File | f in 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 f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | f in Trash releases 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\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": "rRCNiM3qZL6KtBqBP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-11 02:14:48"} {"_id": "S7GMJBazGyqNoiKBc", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually 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": "mw2kiBwgWJkyyRkSf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 22:45:38"} {"_id": "HwEkoA6z4x6SrdDC4", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\talways( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t(all f:Protected | always after 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "R7Zhx7hoDvWNEfCLN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:27:36"} {"_id": "EZQ2fsrsYumyoQuZC", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some f: File | 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "m8LPAAZzaMG9XgBPw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:45:09"} {"_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": "2zCN8AsSB2jcEw52M", "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 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 \talways all f: Trash | once f in Trash implies 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}\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 | once 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": "7iBdnN4JFEpo3t6WM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:31:04"} {"_id": "LtcgN6fKPna8AvwoL", "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\npred prop2 {\n\thistorically no File until 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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (some Trash implies (always Trash 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": "FSXZGnSsQwviob6oj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:01:21"} {"_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": "DK9MCxfBju2bCJLod", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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 (all f:File | f in Protected implies 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\teventually 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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "gBePbNRqoiLHaBYLp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-3 09:46:43"} {"_id": "3w5miv9PQCQPjdRyq", "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\tonce(no 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 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": "fzAjgyhSC8pncgwqm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:50:50"} {"_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": "huTu9vqKb3xyi4tha", "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\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\talways some f : File - Trash | 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": "Tb3Ahrg8iJYte3smT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:32:08"} {"_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": "hNz65GsMJtDRdYMGo", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n \n always all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and 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": "jnKqkf5ohooaD68Qa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:30:58"} {"_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": "oQx8SERL3W7BXXFmW", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: Protected | f not in Trash and f not in File\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "uyrtZoKPHBxSHeSxF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:40:44"} {"_id": "FYvQxDkJbNSL94RH2", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all t : Trash | eventually after t 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": "DA6GXA6JLCRyjbuAh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:39:58"} {"_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": "4NHYckGN69hwpuvaZ", "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 + 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\talways some File\n}\n\n// some file will 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": "av5g3hFq5ST2XX6fL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:53:35"} {"_id": "4TfjBwN9bcMPDfHT3", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "XwvAibc9oS5xTdMz6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:15:56"} {"_id": "3xojvgTDQpXqP7Evu", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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\tonce 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": "fYtAhvxWr3xptMCzx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:43:49"} {"_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": "XyigaKNhmDA4b6tc7", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tone 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": "rNEGFdrFA3pMQ7b6Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:07:17"} {"_id": "NRDbtkjCxgZL5DgDT", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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 all f:File | historically f in Protected implies after 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\n}", "derivationOf": "Eot6zHz7fhFXvWnAe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:04:52"} {"_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": "XrxPPWtKJQxXdNtrj", "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 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 | eventually f not 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\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// 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 always no Protected & Trash & 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 always no File' & File & Trash \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' => 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": "HsmwxTbC6QBtJZnK5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 01:00:06"} {"_id": "P6iALLEX6D9wXAyhF", "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 (some f : File | f not 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 => always f in 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\talways 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\talways all p : Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\talways all p : Protected | once p in Protected => p in 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": "Y5pQFd3up5bJ8momY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:34:28"} {"_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": "3tEPfDoXLPb2K9bFf", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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": "ta3h92JwuoSLwF3gh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:31:04"} {"_id": "pbKkNuBKF5ASnzyNB", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tonce Protected always 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": "6FbapZYu9pYPMxarT", "msg": "This expression failed to be typechecked line 101, column 2, filename=/tmp/alloy_heredoc10021116534878732781.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 22:44:13"} {"_id": "CyXyLTJdcBGvcEWW6", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "rC6kqc9bG3JC6Y8fE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 01:09:06"} {"_id": "MgMGFtHWZhu6yojzJ", "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 no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n File not in Trash\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": "3greanxbMFneGajJ8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-5 01:43:19"} {"_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": "jXsdKTZZP7toEjiAf", "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 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 \talways all f: Trash | once f in Trash implies 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\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 p: File | always (p in Protected implies always p 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "gzmK2zyjetyCjYCTk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:42:46"} {"_id": "RjCaqju6T2QLRpKDa", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected-Trash | always (f in Trash' => always (f not 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": "JitedxQKrywDtohF4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:36:49"} {"_id": "MLPGTBT7N8aprJfHP", "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 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\tsome f : Trash | eventually f not 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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "tfnaLDQJkLYfeZQnT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 23:49:59"} {"_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": "S6tdcgLrMGeG2fuPQ", "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\n \tsome 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 \tsome f: File | f not in PRotected implies eventually f in Trash\n\n}\n\n\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\talways File in Trash since 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": "m9HZE2fZt9WwXrsGe", "msg": "The name \"PRotected\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 18:47:09"} {"_id": "3cE2weNqJTa3fkcBt", "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": "KSSJJ9pAq7PXqufSP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-9 18:15:56"} {"_id": "9wfeGjFRQuZiqcBFq", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 \tall f:File | eventually some (f in Trash and f.link & Trash)\n\t\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": "xLSuotrAWsQdBMcud", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:44:53"} {"_id": "zJX2KSC965sAQfo46", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after 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 always 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 all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "ztY9PnxwmPPkriLbC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:52:13"} {"_id": "J9ZWnfFcJ6HNg5YkS", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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": "stuSBn84S87QmCjKn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:58:53"} {"_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": "2qtyNAacu7zcw7pzE", "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 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 (File & 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\talways no Protected & Trash\n}\n\n// the protected 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 - Protected | 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 => always ( f in Trash and 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": "ktW8jgNTLn5AyEWjL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:27:24"} {"_id": "EAveuGS3MidhdQYeY", "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 (some f : File | f not 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 => always f in 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\talways 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\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 => always p in 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": "P6iALLEX6D9wXAyhF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:34:51"} {"_id": "S3KNbWHELhyCeuEY3", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(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": "N2uWKPaDccHseMDHT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:08:47"} {"_id": "hcDi7SdwdLJPfSaFi", "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 + 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 not in Trash and 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": "KcjpAxJe6zdPqBcNB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:46:17"} {"_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": "B6AwzZzo9ZJcAJ8z3", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\tall 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": "sh4DEvsHrKYS9PycW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:15:07"} {"_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": "bmB7FLnXd3bTjBBMu", "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 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 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: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:File | f in Protected implies 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": "u2YJf7hokhZiMrDKh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:28:25"} {"_id": "p6FHHGvFpDw34Fr5E", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies (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": "qbJAW7vuwEYG55TZs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:24:13"} {"_id": "W6jd5J9obhfBmRG8w", "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\t\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 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 p:Protected | no p&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-Protected | 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| 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: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\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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "y3oiW88RTaA39rSjo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:19:23"} {"_id": "2DyAmxceCRYtY62HH", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 releases 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 in File-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": "mbvu2PwRPMKkrW9SR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:49:15"} {"_id": "XW9HrDRZF4yM4iCc6", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | f eventually not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash since 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": "j9bN966QXwWxMHcJi", "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-11-26 18:43:47"} {"_id": "MoAur9XPowJPtgJZa", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\tsome f:File | eventually 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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "SSYZ8jfA7oXbnYCoG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 16:06:13"} {"_id": "agAX7rJeoubX4o53a", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 eventually 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": "aWtAqSiuqfnLAardw", "msg": "This expression failed to be typechecked line 46, column 14, filename=/tmp/alloy_heredoc14175078324938339099.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 22:55:09"} {"_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": "q5GSz2hB4YiAw2wuw", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\nall f1,f2 : File | f1->f2 in link implies eventually f2 ib 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": "snDmP9GBFrXxvpFfM", "msg": "This expression failed to be typechecked line 58, column 43, filename=/tmp/alloy_heredoc4847011137983214949.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 22:54:18"} {"_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": "BJNrptjA6bsFrwd4a", "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 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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p:Protected | until p 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": "yDrWWt5GmTh7KsNfy", "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-12-14 00:14:13"} {"_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": "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": "NG3P3PNXg93xg3GRB", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 f : File | some f.link | eventually (f in Trash and 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": "nSyczHSJzKwQ9MCMu", "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": "2021-1-13 13:19:08"} {"_id": "BQf6Tsvy4yFR6QpAv", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-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": "fy7HkxFMsK3asutX2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 18:07:52"} {"_id": "cmjWAQDHkou5E4Qqr", "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 historically (no Trash and no Protected)\n\t\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 eventually (some 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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no (Protected & Trash) \n}\n\n// the protected 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\tall 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\talways (all f:Protected | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 some (f & 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 | after f not in Protected implies f in Trash)\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 \talways (all f:Trash | f in Trash since no (f & Protected) )\n}", "derivationOf": "tGLvaAqc4KMSeH4dN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 22:42:11"} {"_id": "eZnfxgCfaAWpXzzHy", "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}\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 always( 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\tfeventually (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\tall f:File | f in Trash implies always f in Trash\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": "JvJor7nua6CBQaXjm", "msg": "The name \"feventually\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 18:07:27"} {"_id": "eK3a6oBSna2LY67m2", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "7GaRScrfGLJtSRDo9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 09:26:57"} {"_id": "Nmay3sEskwP8DuEYy", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always ((eventually 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": "Eh53ZeLfKrzhzxFXm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:07:08"} {"_id": "N6th5a9QRNQja2bq6", "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\thistorically no 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": "WyxuQf6AMqAAGAojJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:42:55"} {"_id": "FiNKbTyH4XSYQ8pN2", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link in Trash\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 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": "tZ9C2Yve3MAncuXKg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:20: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": "eFLPT2uZmCj9kcC8L", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\talways (all t:Trash | after 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\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 after 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8hLrkcogNjy4uTcj9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 13:24:21"} {"_id": "4t9dJ4LsuTWnGPbKw", "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 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 File & 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\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 Trash & Protected\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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "eBeuxYcCJazdeB7pR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-28 00:25:58"} {"_id": "PMNMXxu3qRtQkt8GQ", "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\n \tsome 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 \tsome f: File | after f not in Protected implies eventually always f in Trash\n\n}\n\n\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\talways File in Trash since 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": "ZurSqtJuT6xtLaskf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:58:47"} {"_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": "CgmhnbNNcvRqtSz5F", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n all f: Protected | eventually 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": "oXfwD8P3QXmf8bpBG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:38:48"} {"_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": "nyWWQYe2NqRNa6j3D", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n all f:File | once f in Trash implies always some (f &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": "HCJC38qC5NERuK2zR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:54:11"} {"_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": "tYwPvm4gZ2a3YkuhZ", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t all f : File | f in Protected since 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\n}", "derivationOf": "9Hv57dypRrFywLCd9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:52:58"} {"_id": "kzpXvNypNtoeq5na6", "cmd_c": true, "cmd_i": 6, "cmd_n": "prop7Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "jFKADiBEt6HyhEFq8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:38:33"} {"_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": "swtnekqXM4JjrXbXW", "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\n \tsome 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 \tsome f: File | f not in Protected implies eventually always f in Trash\n\n}\n\n\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\talways File in Trash since 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": "mc5XA7uwkev8rsKxi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:55:34"} {"_id": "jzAXffx42vYtfyuSQ", "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 + 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": "YbmMwqkDxjfsontbZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:20:54"} {"_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": "FWchyHrGyGTSMxZ7q", "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// initially there are no files, but some are immediately created\npred prop2 {\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 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": "ZkALxp7fYH2JrqNMq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:48:04"} {"_id": "TBryZJS7rDSECEErp", "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 + 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\talways some File\n}\n\n// some file will 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\talways ((some File) implies (always File 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": "FzLAE8oSNLgrCEgKK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:56:18"} {"_id": "xGy99zxyfhzkf9vSs", "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\tonce (no 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 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\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\t\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}\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\tFile in Trash since 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": "b63WR3bWzn9XCc5zC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 23:01:46"} {"_id": "jZzjHNmrCcg8H9Kjh", "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 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 | eventually f not 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\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// 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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | after f not 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\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": "svqXbD8WFNcxFAMHG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-8 01:01:26"} {"_id": "TKn8zYtDBgPAHJfkm", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link in Trash\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 after 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 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": "wLmEAfA2cp6WB5XmA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:24:10"} {"_id": "bbYs9DnfiZh7hc5rS", "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 : File | f in Trash implies 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, f2 : File | f1 -> f2 in link implies eventually (f1 in Trash and f2 in Trash and f1 -> 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\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 \t\n}\n\n// if a file is ever in the trash, it was once outside\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "peg4FP42EXRjXHhKp", "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-11-25 17:08:39"} {"_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": "tzE27AJcKM9oAzRsM", "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 (some f : 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall p : Protected | p not in Trash' and p.^link 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": "XR5PZx89kSZrW9c3X", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:29:14"} {"_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": "f4CujgJLmdh4zFRhy", "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 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 File & Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all p : Trash | always p in Trash since p in Trash\n}\n\n// some file will be 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 Trash & Protected\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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "8Ahum3ebt4HddRZKD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:27:19"} {"_id": "5GCGTKDEG9PFN9izc", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\t\n \talways 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\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}", "derivationOf": "MHDWPBaatGntqrBLx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:58:09"} {"_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": "Dz8euAEkiEPsLjEyZ", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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\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 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:File | 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\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": "YRuxeWCsSjHPEzTaC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 14:02:53"} {"_id": "qLKbH8uMum7xe6TrC", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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": "2nkZe7iSqMQmPddNY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:42:39"} {"_id": "pvELTpnpmmHkWbnLe", "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\thistorically no 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 File until 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": "ZBcDZT24q3ZxbLYpm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:48:16"} {"_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": "vfTk2vBSu5qTmaRaT", "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\tonce (no 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 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\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\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}\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\tall f:File | f in Trash since f not in 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\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": "LXQ6jMxX7XHAiekEr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:11:56"} {"_id": "cdnCAJXffPjLxgWia", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 f:File | f in Protected implies always f in Protected\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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\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": "S9tTLALimz2ZZEWZs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-13 23:33:14"} {"_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": "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": "LMk5XQjTNq7L52b4a", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xPNhiDWp3e73fqhiK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:47:31"} {"_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": "ipycL6HZaF6Zhf2GH", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | f in Trash since some (f& 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": "n7cNMykxBgo8BWDRC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:27:30"} {"_id": "GDH69NHd8z3AXWuhv", "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 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\t \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\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\tsome f : File | eventually f in 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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "eKChcb37BHi7v3746", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 22:28:43"} {"_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": "gqdcT9ufddGSpWm2Z", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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 (all f:File | f in Protected implies 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\tsome f:File | f not 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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "kFTJSCjDrZK5MKQsC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-3 09:44:58"} {"_id": "pvzzQ3zeHSfcs524K", "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 (some f : 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tzE27AJcKM9oAzRsM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:29:32"} {"_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": "Kcppa3PrnAu25Pn7K", "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\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": "kBrkkSc4Tmk6ZSjfX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 17:05:57"} {"_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": "SrqKWN4NxCk5QAhWY", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 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": "vNh6jt8wevrRMRKSp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:47:04"} {"_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": "yYpBj7fogxbDSy5Mu", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\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": "RoP6P5xTDfPjeYsJT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-12 23:56:26"} {"_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": "XF2zePDPRJNwoxSoB", "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 (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 : 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 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 : 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 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": "qvZiKcc9DH5Xi7tp9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:31:10"} {"_id": "jNeJThnXoPKfD44ki", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p'=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": "hykw2Kcy4ASz9TGv6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:52:52"} {"_id": "eEBMRPZZA3LskGFXg", "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 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\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' = 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\t\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 : Protected & Trash | 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 File' = File - File & 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": "Y2j7HX6RQGqLeFGeh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:44:42"} {"_id": "kFQjkKGqXjAHai2vH", "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 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\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\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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "GSEWDH6ou9Lur3pNE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:18:44"} {"_id": "fKJWsbLphYufWJcko", "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 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 always all f : Trash | eventually f in Trash implies always f 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 always some l : File.link | eventually l in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n 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": "2Z3qQ4Gu2a9DyhPgk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:44:47"} {"_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": "wFs4BY3ci85JjLMA5", "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 no Trash+Protected\n \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\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 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": "GHxJqxwhXNzMnaePF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-9 13:45:15"} {"_id": "yaApitqXTmdSmsGLy", "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 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": "nAF7gb9dJb4ux29Wt", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:40:09"} {"_id": "ErDfWijyJKyEjrb9o", "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\thistorically no 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 File until 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": "iJbvSLNzqqKx7MMMQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:44:27"} {"_id": "vS5tsgbxYQFfKEv5Q", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\tall 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:File | f in Protected implies 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\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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "5XwiQW4YH3EKc8mWt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:19:02"} {"_id": "3wPPHyj3R6WSGmMC4", "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:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "koybTpcJMdSKcL3JD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:07:48"} {"_id": "6NgNZoRoJYR3h6LaZ", "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\tonce (no 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 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\tall 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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "WdQwsEHHybNQGEQmz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:09:06"} {"_id": "BNzfxzmKjrnKWq4SH", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f:File | some (f & 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": "7Cra2HnK7RiLwnRwz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:58:13"} {"_id": "NBXMS7egShxsknRqL", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |eventually (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": "2EhZQ4pCgEYoZoQA3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:11:55"} {"_id": "HBgCzfKF5oNYvdof5", "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 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 \talways all f: Trash | once f in Trash implies 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\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 p: File | always (p in Protected implies after p 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "jXsdKTZZP7toEjiAf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:43:00"} {"_id": "4woBFcKXZrqCSvmaB", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: File | always f in Protected since 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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\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 f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "uJsfkzAznYb7H7Pck", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:28:14"} {"_id": "42GsEmaBnxZZBaETL", "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 implies 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": "3GYptLraC4EYLKLRe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-9 18:12:53"} {"_id": "cY5x9C6BA5HZYwGc2", "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 always( 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}\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\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": "hRgngih9gi83QnSMd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 18:07:39"} {"_id": "9oBCPg4JoyeASroSa", "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 + 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\talways some File\n}\n\n// some file will 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\talways ((some Trash) implies (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": "FPXobDkgjA7GatSkh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:57:59"} {"_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": "irufJAKZmkAui6Dve", "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": "H3BS79X2eYbFiDXEe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:12:02"} {"_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": "F2KePiHJCBuvNABAM", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HRQ3byQsbDYudS9ut", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:04:38"} {"_id": "TnjkmHCwsmRapaMaj", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 implies (eventually f.link&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}\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\tall f:File | f in Trash since f not in 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\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": "7PsEwsNwhrj3eC4cv", "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": "2020-11-26 11:22:53"} {"_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": "emi3LLucdfiEoNDZc", "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": "2020-12-1 11:33:44"} {"_id": "feZomy2cKfwAt8M6C", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\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": "HNt4cJHi3LPx9KMws", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:04:26"} {"_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": "Q52cxkT4fEZqNoNWW", "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 : File | f in Trash implies 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, f2 : File | f1 -> f2 in link implies eventually (f1 in Trash and f2 in Trash and f1 -> 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\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 \t\n}\n\n// if a file is ever in the trash, it was once outside\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RRxtvxwRZhg5ALQgS", "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-11-25 17:08:11"} {"_id": "2meDKyN9uP9fGECws", "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 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 always all f : Trash | eventually f in Trash implies always f 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 all f : Protected | always f not in 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": "3R3tGBusB2iTya9Pp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:53:37"} {"_id": "8rwJ2pw5aNpusgToz", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link in Trash\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 implies 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": "J9oJpTuxFRpj3eMvt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:20:07"} {"_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": "egTq2tLTHC2SHMfhA", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | once always f in Trash implies always after 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": "2bchxJd3tPpX5X8MN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:55:46"} {"_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": "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": "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": "o5oEGeieMJgvZur9o", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 | eventually 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 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 always some f : File | eventually f.link 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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - 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 : 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 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": "gJ9teRZhn5pNTsMFM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:03:30"} {"_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": "scY9Y5P6Jbb3GjARN", "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 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 no 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": "yq8CZxrsjqY9pohiE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-27 23:50:05"} {"_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": "NyGmofDpq5CazdMvS", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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 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 (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\talways(all f:File-Protected | 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 (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": "TzYnigamsbekwQcXb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 01:01:29"} {"_id": "cuDe5eXjzHxtyJTCj", "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 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 \tall f : File | f in Trash => eventually f not 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\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// 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 always no Protected & Trash & 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 always no File' & File & 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\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": "BjHMcwPzcBkjwEA6N", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:52:19"} {"_id": "uGgLnNr3sPt3oAg3D", "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\talways after some File\n}\n\n// there is always some file 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\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aptsxg6s7ahymbFic", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:37:03"} {"_id": "SDubHLJDQH6kYYnkc", "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 no Trash+Protected\n \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\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 some f : File | eventually 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": "9cqup3oqwXecf3M72", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-9 13:46:00"} {"_id": "XdWa2vsCp8GCwwD4K", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "Ep3Ah6dKtGpsAZDTC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:16:23"} {"_id": "uxfywd5zu2hXt9wiP", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after 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}", "derivationOf": "9EQZEGwTtLhFdYt35", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:03:04"} {"_id": "Evktc3iKvau8ZNihy", "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 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 \teventually 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}\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": "6brcaY7DWnoJ9WwQ5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:26:08"} {"_id": "aYn6atvAz8Q6RuSjZ", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n all f : 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": "8vaaGGmTuwkoN27T4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:48:20"} {"_id": "p69fAMS5oQTRjag7a", "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\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\talways all t : Trash | t in Trash since 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": "vYzkBfmqPkMNhtjdY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:44:20"} {"_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": "PBFK3MJzvCjMXBz26", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 all f: File | always f not in Trash once f in Protected\n}\n\n// the protected status never changes\npred prop10 {\n \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always (File' = File - f since f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9JYJEDR2pozh494go", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 23:24:11"} {"_id": "R7Zhx7hoDvWNEfCLN", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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:Protected | always after 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "P4mbELqFA6Q7YbQbG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:27:31"} {"_id": "koaj2Tqmh87MvbsZ6", "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\talways no Protected & Trash\n}\n\n// the protected 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 | 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\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 : 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 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": "rkg5jHrTMroDqux2f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:32"} {"_id": "8zLoS3zDNCc7j5dco", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "4xHG6bqvS7kpGR27D", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 20:50:52"} {"_id": "5z83f7LT3zpbmHcQL", "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": "oKJZkjWBnZeGy3C2N", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:12:26"} {"_id": "YouvKmrL5bT6QQj4R", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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": "efbawyNBfcMdfzPny", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:53:10"} {"_id": "nr95vCYytBcgBfEMd", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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+f.link) 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": "po2KsAE8xsQF9y2Jg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:51:03"} {"_id": "jPiNt6kHYLKY4H9Qf", "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\n \tsome 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 \tsome f: File | (once f not in Protected) implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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 once 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": "AxfAmLCMgudXhr2L8", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 19:06:02"} {"_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": "M2Ri2zRS9s54gX5iZ", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 p: Protected | historically p in Protected and always 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": "Lgjbx4j8HCtqkJKs7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:59:35"} {"_id": "YbmMwqkDxjfsontbZ", "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 + 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": "y2FY24QDAiZysDwXx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:20:28"} {"_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": "53CKKtJRb2DNZT6mh", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n all f: File | eventually f in Protected & 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": "xsyjDD7MgKFyphxcu", "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-11-26 22:40:01"} {"_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": "Le4rE7zAkHNxnEJsB", "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 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\tall f : File | f in Trash => after 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\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": "C9DzakjuAgjPWSpNa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 22:34:10"} {"_id": "scz9bNScxSvq9Li7o", "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 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\tall f : File | always (f in Trash implies 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": "MqyFd5KPsBJzJvXkm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:22:06"} {"_id": "LpPA2wg2Yc8vJnyog", "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\tonce (no 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 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\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\t\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)\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "i7i4Pgn2HqSaY3gox", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:58:28"} {"_id": "wiaKqPdZrpu5w6xBA", "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\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\talways all l : link.File | eventually l in Trash\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 - Protected | 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 in Trash since f in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall t : Trash | once t not in 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": "RDJiWwSK8Ev9vZqKx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:51:54"} {"_id": "t2yGD3RxiSRWZd798", "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:Trash | eventually no Trash & f\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": "wfMYuEqyrSYaPYkYL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 17:07:33"} {"_id": "3m3PdmJi2FLGis6GL", "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 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 \t\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\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\t \tall f : File | (always eventually f in Trash) implies (always eventually 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 always no Protected & Trash & 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 always no File' & File & 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\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": "EXMjdEcoTNn3imhGh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:49:31"} {"_id": "LQXWRZ9htAuDjc85t", "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 (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": "w296zYXbdnuQMzsjr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:20:18"} {"_id": "kykkjMnDB5FY32EaN", "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 eventually 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": "KvzyJKxjyNGxi2Ygw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:44:32"} {"_id": "h4R2fotpwS93ENYM3", "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 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 \talways all f: Trash | once f in Trash implies 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 eventually (always all l: File.link | l 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": "BLBwpBaypXNqX4znW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:37:08"} {"_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": "3Wj4kTdTigrpKYMAR", "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 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\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' = 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\t\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 : Protected & Trash | f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t\n \talways (no File & Trash and eventually some File & 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": "iCb6s6rAN3JME9C5s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:35:07"} {"_id": "xZ9AwZjnebNcycHmC", "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\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\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CHrjDHoNSJTLBWJ45", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-12 23:47:13"} {"_id": "LPptqCQYEE8pYFPNG", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t all f:Protected | always after 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\n}", "derivationOf": "JyKdqmSJ3iADZZAWc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:02:55"} {"_id": "hpuqk2RnjiNQHfLt4", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always some f: File | eventually some Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "MidrPz7QgwRLwuWtT", "msg": "This variable is unused.", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:20:54"} {"_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": "Q7B4QLbRjoafxwGk8", "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\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": "Ed3yzHWosqNnHqfdS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:25:14"} {"_id": "se9KQR4bBoTZh3kAn", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "4AyTzSm6YpAT8yZ5F", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:46:39"} {"_id": "MBoXwwtxeab76x9oF", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\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 & Protected | 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": "Tbd4YkCjP5GmLwbY2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:41:42"} {"_id": "jCdcSrxTsH6w5gHCj", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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": "AYyq7iqfF2mNeyzYC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:20:18"} {"_id": "k2Gv4GmcSSHHN7unX", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tProtected since 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": "wZqzMSQ8pAajPgsxZ", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 22:29:08"} {"_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": "iobFZBQeXdWCnTcFG", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig 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", "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": {}, "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-11-24 17:22:48"} {"_id": "DDBBihAAY3LsCEf94", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 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}", "derivationOf": "KLjJxsbHpyiQ4aY6d", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:05:19"} {"_id": "2QAeAhtQBuhg4yK9D", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "owm2xNjaR7wLJAfkM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:13:44"} {"_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": "RSBCZhvpSphkte2tp", "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\n \tsome 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 \tsome f: File | f not in Protected implies 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": "L4i3Nn9oCmdLRzRnj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:43:35"} {"_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": "oJQ2YPWPnHq2L4WSX", "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 {\nno 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": "59jRL2ccHYo6kL4JG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 11:36:43"} {"_id": "35AWzDBDLbLPPRTCk", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 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": "9JmzBBYeiLsiPsMR4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 17:16:53"} {"_id": "CZzBYTmQhvTpFYQwp", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n\tno File implies after always some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xfnKjzCMEEKgKpHio", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-14 00:36:33"} {"_id": "fw2JgmvjvqampAvqK", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno 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": "6yu6TYTZcX4Yq9iW3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 02:47:32"} {"_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": "AgNAD3pvnYQmLp654", "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 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": "9jLLP9ahN5C7nggPW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 19:51:45"} {"_id": "iSuEMmo4p8cNhcMEk", "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 \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\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tall l: File.link | eventually l 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": "7FKKveHYfzNL35ydc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:23:01"} {"_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": "rCR2p5rXWLJYaSgMA", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected | always (f in Trash' => f not 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": "XneCHe9msFC2q4YuC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:37:38"} {"_id": "sFJ4A4uGMtWTWgteC", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (eventually f in Trash ) implies always f' not in File and f' not in Trash and f' not in Protected\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9EuxsNedFa6nc8agR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:03:58"} {"_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": "Deek2toL5cfNDPoEb", "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 + 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 | eventually 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 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 always no Protected & Trash funciona, nao devia\n always all p: Protected | always p not in Trash devia funcionar\n}\n \n the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n \n every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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\u00e3o percebo\n eventually 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 all t: Trash | once t not in Trash nao precisa do always antes?\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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "5fddLLrSqEH8FrKm8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:34:23"} {"_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": "EfGZ3945nZiCP6w2o", "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\tonce (no 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 f:File | f in 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": "adPyxDyyFsbSqAqjY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 22:49:37"} {"_id": "dwhTWw7GoZ9yNkWWT", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically 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": "GmZnsPBoCBKdZN4fc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 17:31:24"} {"_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": "dTRj8PZQWedg4GGmR", "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}\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\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": "zdGXxrF2NRDhizjQi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:03:01"} {"_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": "9uXpeQWR6simrdW7f", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\t\n \talways Protected = 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": "frB2ELrnjYSqAELre", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:40:31"} {"_id": "3R3tGBusB2iTya9Pp", "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 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 always all f : Trash | eventually f in Trash implies always f 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 all f : Protected | always f not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all f : 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": "bFQZc37STGKyt6Pk5", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 21:49:22"} {"_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": "hoMs8jhropDpTYcuF", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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 eventually (some f : File | f in 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": "xWPpdtXxCpny5xX7v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:26:42"} {"_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": "wXQaBJhEbYyHgRYSf", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 & Protected) | always f in Protected)\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways(all a : File - (File & Protected) | after (a 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}", "derivationOf": "AcypBbFjo9cKzyFPu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:45:17"} {"_id": "2nwXkQWCBzstRRMM7", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (some Trash implies (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\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 (some (File - Protected) implies ((File - Protected) in Protected'))\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\talways (eventually File 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 & Trash | 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 (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 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}", "derivationOf": "bjmcTjxLd68aSqe6j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:39:33"} {"_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": "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": "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": "zkMRru6ArP9yALPZa", "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\t(some File) since (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": "ZA4XCBD3yxP9xNLRK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:45:04"} {"_id": "Y5pQFd3up5bJ8momY", "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 (some f : File | f not 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 => always f in 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\talways 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\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 => always p in 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": "dEmN6P4cKtRTpK7yN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:33:47"} {"_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": "vRBhGSa6YsWmcc2H4", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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 (all f:File | f in Protected implies 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\teventually some f:File | f always 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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "xZAdCkaBxhJgZ5inM", "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-12-3 09:46:19"} {"_id": "odmCnSvEWgrnAazbs", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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:Protected | 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "ajiA42ycxmaGoB2ty", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:27:21"} {"_id": "B2S72M7fEH6AWLM7u", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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": "itRzgJnk662cRnFWS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 17:13:00"} {"_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": "rA8WY5TumaphNTK3s", "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 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 (File & 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\talways no Protected & Trash\n}\n\n// the protected 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": "aZGuGgk6c5DfWduCa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:20:50"} {"_id": "Z4mZgn8j8MZpG4HgL", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\teventually (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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "wibcNLXBM5bt5qiam", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 09:29:56"} {"_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": "f7ugMHLMxoev3SAdy", "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 + 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 | eventually 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 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 always no Protected & Trash funciona, nao devia\n always all p: Protected | always p not in Trash devia funcionar\n}\n \n the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n \n every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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\u00e3o percebo\n always all f : File | always eventually f in Trash\n}\n \n if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in Trash nao precisa do always antes?\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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "DTgud25MXA99KF92o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:36:07"} {"_id": "zd2JBkcGiaQ2tRr6j", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\talways all t: Trash | once t in Protected and t not in Protected\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: File | t in Trash since t in Protected\n}", "derivationOf": "XS52JDeBZCebX9EN6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:40:43"} {"_id": "PgyjBLWpjQWYhHnzC", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\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": "6uwQYDkt7oHEv4egq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:27:50"} {"_id": "nnL9uDKK2vjuyPoSn", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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": "9bqekNiTZvz78J5cy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:48:37"} {"_id": "8LHTWNSoRomG28ixp", "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 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 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": "DNqW8HDhSnttWd766", "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": "2021-1-14 00:16:05"} {"_id": "45vjSQXZKKbJ9Wa3v", "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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-12 22:03:41"} {"_id": "sWnj79cznnQ3vbfai", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | f in Trash since 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": "uBPkNzgmXedYek9LA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:01:54"} {"_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": "oggr4hLQ5YZBtBZhb", "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\n \tsome 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 \tsome f: File | (once f not in Protected) implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\tsome f: File | f in File implies 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": "4Pmes9cbJCL6coFit", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:09:00"} {"_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": "vbKNCFFWy9EtCXRNh", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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 eventually 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}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "QtsBSPWAvmKJHkzwD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:12:54"} {"_id": "GHxJqxwhXNzMnaePF", "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 no Trash+Protected\n \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\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}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4Fp2nghQ9WNijCCQR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-9 13:42:19"} {"_id": "eQCDRoFTv5jMzEvvX", "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\n \tsome 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 File eventually 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": "eB4ELgfC7M9fiCLD2", "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-11-26 11:41:21"} {"_id": "KtFeYPkAqQWLAxxMY", "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}\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\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": "RdpsxjtcnAf3CZuSK", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-12 23:38:34"} {"_id": "2zz45wToooJzr6W4y", "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 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\talways no Trash & Protected\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\tall 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\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\t\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 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 p : File | p in Trash since p not in Protected\n}", "derivationOf": "3fZMYFZyTNK4CZmK2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:21:44"} {"_id": "LsSCZZxLKCfLFyNcw", "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 \n}\n\n// there is always some file in the system\npred prop3 {\n\talways (some File)\n}\n\n// some file will eventually be sent to 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": "heshEYcTpb87NXn7i", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:48:11"} {"_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": "cpk69QC3WLowuAvN2", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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\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": "NoZAzsJBKMC5XpwZt", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:36:55"} {"_id": "pKv8LKidE6gpuTsFP", "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 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 always( 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}\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\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}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uEBjE3sqNFY2ruJgD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:53:09"} {"_id": "b3eJpMAp9erFpZJ5q", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "rRMQxKWtG7Z75J4CK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:45:55"} {"_id": "2p9LBjyngMR9QjdZw", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n all f : 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": "uFWEumwxaPraqHzqZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:50:45"} {"_id": "sPQpR8qvssvhYKZTS", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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": "QZvXayHRKEdWP4C37", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:49:11"} {"_id": "Y9Qxupn6PiuHFLJJe", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some f: File | 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "hvvee89Hugebq2utP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:41:03"} {"_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": "vSCEZMDEqtd2As4ri", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n 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 always all f:File | (f in Protected & 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 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 always all f:File| f in Protected implies 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 always all f:Trash | f not in File'\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p:Protected | p not in Protected' implies p in Trash\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always all 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 always all f:Trash | f in Trash since (f not in Protected)\n\n}", "derivationOf": "otxvPuapceC3aJTmv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 18:31:21"} {"_id": "sfuA7iJpdTkSXqaXG", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f: File | (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": "NRuZzfGovGdw8sdNQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:25:54"} {"_id": "Rumr5sAkr8hZF9xhi", "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 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\t \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\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\talways some 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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "MqGoFEhDEbRDvQmf9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 22:30:05"} {"_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": "Nvxeyhnc7M8vgktL7", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f:File | f in Protected until f 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": "cni8pEGjBnFaFrGWz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:57:48"} {"_id": "zXHR9ug7uNeNfsgqM", "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 until some File\n}\n\n// there is always some file 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\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xTfDRzenMSWMtuBhF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:37:53"} {"_id": "fnbb4uesQDYzazifY", "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\tlet x = File & Trash | always x\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vjaWN2F7vc7DiwX4M", "msg": "This expression failed to be typechecked line 46, column 25, filename=/tmp/alloy_heredoc635685632079362184.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-19 19:56:59"} {"_id": "Xq69gGZj3JSQr2zbq", "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\n \tsome 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 \tsome f: File | once f not in Protected and eventually always f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash since 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": "2vKd5DAkFNnF7dMcX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:00:52"} {"_id": "cWZzbDCQy2M8tyriw", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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": "bdkNMnCbHbAnw2bna", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:10:04"} {"_id": "BDHfCrqynzXxL6gtH", "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 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\t \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\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\tsome 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\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 always no Protected & Trash & 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 always no File' & File & 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\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": "JHvpHmymWtvGdfnwZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:23:07"} {"_id": "7E7Pskx2A8guYGh7N", "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// initially there are no files, but some are immediately created\npred prop2 {\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": "ZRZP5uiXjqX52H5dy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:47:14"} {"_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": "cz5hLWwrW7upRgKW5", "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\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\talways no Protected & Trash \n}\n\n// the protected 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 - Protected | always (next 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": "zP93k5eymZdkZNwok", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 15:18:01"} {"_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": "B2yfNAYWXbfjGGAaY", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |eventually (before f in Trash implies always 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": "KZi58pW9nzyz3c5Pb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:12:47"} {"_id": "5XwiQW4YH3EKc8mWt", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\tall 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:File | f in Protected implies 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\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:File | f in Trash and f in Protected 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "4WygsFg8oPKqHze83", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:15:49"} {"_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": "S7TgxF7LSwWokEXdQ", "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 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 \talways all f: Trash | once f in Trash implies 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}\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": "pL9wHh47Khn2jgXmF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:32:25"} {"_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": "JHLrP5kHozfi5gn94", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "MvCumdGej4yWrhQNb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:29:25"} {"_id": "DNSCkLByywNq5H8Dr", "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": "rtK6rQoTDX2x3TB3A", "msg": "The name \"Link\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:15:47"} {"_id": "ys5HNL3zjncqutkRh", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 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": "oFgCEKJMbEdJNZA9j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:24:24"} {"_id": "WNYsH6CnqeocXFYYY", "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 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 \talways all f: Trash | once f in Trash implies 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\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// 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 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\talways all p: Protected | p in Protected until p in Trash}\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\n}", "derivationOf": "H6hbXdjMXpbyLNznP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 09:23:08"} {"_id": "MqyFd5KPsBJzJvXkm", "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 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\tall f : File | always (f in Trash implies always f in Trash)\n\n// some file will be 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": "kSXfsYQkGeg5K2jEy", "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-12-2 23:21:55"} {"_id": "b5NKcWr95YuAFqdMR", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\t\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}", "derivationOf": "af8GCrgtcdxBB2uts", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:03:14"} {"_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": "iPJReJgRA3L7XHcN3", "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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-4 19:12:31"} {"_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": "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": "nSrFQtrzXqXL3bSTB", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | eventually p in Trash implies eventually p not in Protected\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "jNazScQksxYRpHZAB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:58:29"} {"_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": "ZgqLMPt9TdwtdEGMe", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always ((eventually f in Trash) implies always 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": "Nmay3sEskwP8DuEYy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:07:28"} {"_id": "gD4u8me4KEzK4H47H", "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\tonce (no 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\n}\n\n// 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": "jxn6dnieLwrT6JjR9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 22:47:35"} {"_id": "rwrGXzkvYiAWb8iNW", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 ((some Protected) implies (historically some 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": "WC7eDjvh3WmFS9Mmw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:47:19"} {"_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": "G85wG8DjAYB4H2MYy", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\talways ((no File) implies (some File))\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "hbwc2frhtdJXNrmAy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:43:09"} {"_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": "pEp7T5z7oiqbLMt3y", "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": "yhXkWbT3wCFncytB7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 11:37:11"} {"_id": "fmnqpQQq5SvLL89s2", "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 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 File & 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\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 Trash & Protected\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 + Trash | 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 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 : 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "6NeSfe7DJr2wNuPYs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:31:51"} {"_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": "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": "dTPoBWLsWwJEHKhsS", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\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}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6za4n2GXeYwciDE28", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:46:15"} {"_id": "BLDFMEhPyqfHPhNPp", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\nall f1,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": "RoXhZLWpwMdYzMfye", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 22:59:52"} {"_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": "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": "C9DzakjuAgjPWSpNa", "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 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\tall f : File | f in Trash => after 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": "qmexSSMdeGzWagBDq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 22:33:53"} {"_id": "gGdFbSmZxewp5qhWA", "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\tno File\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always f in Trash implies releases f' 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": "b4wuyX9iNqRgBBStq", "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-11-26 22:58:14"} {"_id": "fgKdBuqMyARAswm4B", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 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": "tGXGjKuAeQJiwctak", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-8 03:40:29"} {"_id": "EZ32zsLGzznPTX3N6", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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": "Y9vZE8ifZtgpw33Ea", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:26:14"} {"_id": "nW9wd887AHw4eLtaF", "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 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 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 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": "uYpfxN4TajFfuqWJn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:37:32"} {"_id": "GQr3RPHgNsaHvbHfC", "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\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\talways all l : link.File | eventually l in Trash\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 - 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": "jzGQPDfW2o2mY54QM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:50:37"} {"_id": "FSXZGnSsQwviob6oj", "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\npred prop2 {\n\tno File until 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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (some Trash implies (always Trash 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": "nmoXemvx3Z9LadB4o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:00:48"} {"_id": "Skex4dME5vb8cXr4o", "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 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": "FaakCfMQyvsDMgr7b", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:13:28"} {"_id": "mc5XA7uwkev8rsKxi", "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\n \tsome 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 \tsome f: File | eventually always f in Trash\n\n}\n\n\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\talways File in Trash since 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": "LoLaWCCtkJwqkfgCN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:55:02"} {"_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": "4LBZn6hHXrBSrsri4", "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\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\t\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": "ojLX3b2Yy6WRa8KyT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:32:51"} {"_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": "Qc2Wa6jhoPKpNoK4z", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\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": "e5Q3nxGTbgJK5vw4u", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:08:01"} {"_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": "HoZRrvFeS9sRarFEQ", "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 | eventually no f&File)\t\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 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 p:Protected | no p&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-Protected | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "RM2qNdoXpfC6CdaDf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:23:23"} {"_id": "nh5DQR6aJd6LpryQD", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at 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\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-Protected | 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": "K3Nz8YpSTNpremue4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:47:22"} {"_id": "8Q3yNNve7gKoB3DPu", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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": "ZeYHZWe7JmwegPLnH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 13:27:27"} {"_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": "4xdrGJQnJNJQMHfq8", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "F7Zrvf6sTDPRh3zQL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:08:07"} {"_id": "NvZWCTRtSLhZBkcR9", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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: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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MqSEpzLwoJHrxuM3q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:59:45"} {"_id": "mYDYdnaHpg6PHcmjf", "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\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\tall 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": "FJKbCv7tHhhez5Y3d", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 19:59:48"} {"_id": "fcT9RNsjX22mhTsq9", "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 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 | eventually f not 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\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 eventually some f : File | f in Trash => after (always eventually f not in Trash or 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 always no Protected & Trash & 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 always no File' & File & Trash \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' => 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": "qb5jZvoc7BTNDhwx7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 01:04:08"} {"_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": "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": "DJAvFLfNLnHctXjJY", "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 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 : File | f in Trash implies 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\talways 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "65C9JPruqgynC2eXT", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 17:00:52"} {"_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": "TsdzJ2Yjzfuu6N6XL", "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 and 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": "DbfPyGkKjq9NRcQ2Q", "msg": "This expression failed to be typechecked line 26, column 14, filename=/tmp/alloy_heredoc8987693830053704414.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:02:25"} {"_id": "ggdqBCRm545xXJGMa", "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}\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\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\tall f: File | always f not in Trash since f in Protected\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WDLywmrv5tSecRnZR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:31:50"} {"_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": "v3vXGQ6FCKkxE4o4y", "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\tonce(no 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 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\t always (all f:Trash | 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\t\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 | always (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": "Y37NATD6zpZ63tatS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:57:59"} {"_id": "NsppY3vXdgfgDKvgg", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after 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 |always p in Trash releases 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}", "derivationOf": "nBLAW6QwHAgEtfy8N", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:21:44"} {"_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": "stEb3ubYdTc2PA3Wk", "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\tonce (no 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 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\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\teventually (all f1,f2:File | f1->f2 in link implies f1->f2 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}\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\tall f:File | f in Trash since f not in 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\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": "28sfjMt6pYJq9yMjG", "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-11-26 11:12:30"} {"_id": "N4c3LZ3DqZeBuqZgH", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t 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": "FYvQxDkJbNSL94RH2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:40:14"} {"_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": "QHQGByuW5JGwFszXA", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\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\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 since f not in Trash\n}\n\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 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:File | 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\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": "2cdKWwLedZQLLbNQJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 14:49:01"} {"_id": "C8fwykgcniKQBrybn", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some Trash and always (all t: Trash | always t 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": "YMva9H9FrkCGC8k2F", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:41:07"} {"_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": "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": "52BpeWaQ7QmGte7vR", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 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": "Txbs5HM2NrznCtNup", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:38:37"} {"_id": "PJg8wquZrZtpn96iY", "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 no Trash+Protected\n \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File and 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": "DDGWxXHkppHY5vmRo", "msg": "This expression failed to be typechecked line 29, column 15, filename=/tmp/alloy_heredoc1689520579647842037.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-9 13:38:06"} {"_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": "2EhZQ4pCgEYoZoQA3", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |eventually (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": "QRRSSRWgxMgnHpkRx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:11:45"} {"_id": "RdAr8ExsBedC92TcB", "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 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\talways no Trash & Protected\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": "kxNH2PDDuBf9NHB8f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:03:45"} {"_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": "Lg9BW99yjDi22uzgs", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 some f : File | eventually (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": "oXjNJzPnsn5YKa4fK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:16:28"} {"_id": "7cp4jgbuExAPj5Luq", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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 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 (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 | 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 always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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&Protected | 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: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 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": "uQ9f5uf6A6sdr2ko8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 01:05:25"} {"_id": "bbYyvogCGuG3dyj59", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\talways all f : File | (f in Trash) until (f not in 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": "MdaCtchyN2zqWjz9y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:29:10"} {"_id": "X2vAE7exghxKcEGKW", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nall f : File | f in Trash 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": "w75vJpsABExenhWog", "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": "2021-1-13 22:50:09"} {"_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": "Je9uBa3bvBEzF7qFe", "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 Trash\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": "ito7oAsX9aDWEcSwx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 16:21:38"} {"_id": "kTjEE4A8a42uMG7gh", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 all t : 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": "SLE5eXHevzSu5XrJd", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 22:57:40"} {"_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": "3XRzNEsEArmRpbkYq", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n (eventually 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": "pBZRaW9oQm2d7EEHR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:01:37"} {"_id": "pX2NynsXDM4CN4rsK", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig 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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all t:Trash | after 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\tall 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": "FEt5y4p3KBYtvuFPp", "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/Trash:File"}]}, "nodePositions": {"File0": {"x": 684.7999674479166, "y": 99.56666564941406}, "File1": {"x": 513.5999755859375, "y": 298.6999969482422}, "RejectedByOracle": {"x": 342.39998372395837, "y": 99.56666564941406}}, "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-11-24 18:39:54"} {"_id": "zJtYbx4YajDhRmomS", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t all f:File| some f.*link 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": "Nx5cq8D8njQ4vtZ5J", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:42:08"} {"_id": "yf4Xt76H8Aaz5WcZG", "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\tonce(no 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 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\t always (all f:Trash | 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\t\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": "Sy6S6dnfqHKgGp3wz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:57:28"} {"_id": "2Jr77fRqSxANc5qRp", "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 all f:File | f in 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 f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | f in Trash releases 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\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": "eQ8pEi235ATsLssts", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-11 02:11:11"} {"_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": "APHvFwQPL9Fi8E7yQ", "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 (some f : 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\tall f : File | some f.link => 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": "HeTQPu5kq88DQxgBF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:18:11"} {"_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": "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": "doDdGzeaEpHfkDXqd", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t always (some 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "WJYMF2QKpjTQJPcMr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:53:00"} {"_id": "YxR5GzJfGKbg8Jee2", "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\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 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": "CTRjdtjPbetR7irLk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:42:19"} {"_id": "hXKnYae3cY7ycsoKc", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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&Protected&Trash | after f in File&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\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": "NPdaE7aH5GrGAwreS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:33:33"} {"_id": "ESXs8vH3Qn4GAYnSs", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at no time 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\teventually (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": "pBknZzgrAPKiMRC8S", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:18:14"} {"_id": "73jrC6Gq9mEvhAqyh", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\teventually 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": "6wdeWx9o5QHxKpFNL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:42:37"} {"_id": "uk7eDyc9M8QRvaFWm", "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\thistorically (no 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-11-26 11:42:26"} {"_id": "i554jkEgjLcfp3WDc", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 always Protected' = Protected +(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": "ZkPT9GLoims9AernE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:47:41"} {"_id": "7czDZPXEgpeDzodHy", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(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": "rC5gjJN7tcrgEHJ5X", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:12:25"} {"_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": "Be2jHtbPir9SrQdpi", "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\tonce (no 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 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\talways (all f:File&Trash | 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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "j8sydttQE8apiheek", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:10:30"} {"_id": "rFiwAdRFoC29PwdBc", "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 historically (no Trash and no Protected)\n\t\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 eventually (some 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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no (Protected & Trash) \n}\n\n// the protected 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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\tall 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\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 no (f & Protected) )\n}", "derivationOf": "tDXHCpLTkG5Fy2q2F", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:37:18"} {"_id": "XmnWPRRHr2cPMfnZq", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 always all up:File-Protected | up implies up' in Protected \n \t\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "6nCH2Q7F2XeaKw6Wq", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-8 03:36:56"} {"_id": "XtHx2Bhbyt74pr5JA", "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": "ZNhv92EHumdNESdgK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-19 19:50:52"} {"_id": "6prrjYQmPQ7qTJsHu", "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 (File & Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n \teventually some (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": "n28bTeuJbmkTGE58T", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:12:10"} {"_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": "DtDgxHokGsszfynuo", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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": "nnL9uDKK2vjuyPoSn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:48:47"} {"_id": "E8WTA6Y4epLmbSnqM", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways 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": "dxE4haneHx6FYvqFK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 22:44:55"} {"_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": "5xAR4on3L92uxLuMk", "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\thistorically no 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 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": "ErDfWijyJKyEjrb9o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:44:48"} {"_id": "vjaWN2F7vc7DiwX4M", "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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File-Protected | 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": "eEqCWswdmWRNxFTP7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 19:56:15"} {"_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": "e6EtAM5QpTfQhASG9", "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": "BPkrAnb3R7snphq22", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:18:53"} {"_id": "s9whTH7SbX722ymbu", "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\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\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": "wLttJ2oBSugbQoAN2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-12 23:39:28"} {"_id": "iG3n6JJ6mYoRYKBme", "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 (File & 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": "n6WjGmHa98wZzMhqB", "msg": "The name \"trash\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:11:25"} {"_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": "bP7aLTPARMA5EsQxD", "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\tonce (no 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 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\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\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\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WvJ6vfw2TGuq2cdbz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:55:34"} {"_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": "GFxzFCGzj3tQTTbFP", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in 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 Protected&Trash implies after (f 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\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": "MewytaRm4ywtAvvgd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:35:06"} {"_id": "c57tEijYfAmsHeSKX", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always 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": "SrqKWN4NxCk5QAhWY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:48:14"} {"_id": "GxjsLRmHaKf45Hv8B", "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 (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 : 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 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": "NB4zwSRdswGdh4sH4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:27:16"} {"_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": "34xYtTLtnbgbLS8c9", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually f in Trash\n\n}\n\n\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\talways File in Trash since 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": "eeQvcyhYvEmTnacW3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:45:02"} {"_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": "hfk3Skw9NymJoZE3w", "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 eventually (some f:File | after 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": "rmSo6ai4cW9rYnDwZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:16:34"} {"_id": "RoP6P5xTDfPjeYsJT", "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\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 always 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": "6edvcNEDWaiKJXxnb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-12 23:54:52"} {"_id": "8Mpi7ffLSgDGwqFpA", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 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": "hrj9dQR5QJxdt347z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:07:29"} {"_id": "ZoZKrAp72iyzKEesX", "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 \t\n \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 \tsome t: Trash | once t 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": "RdGZWejJAMgoWfAym", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:41:09"} {"_id": "njrJKHN2trvb963vj", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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\tProtected' = ((File - Protected)-Trash) \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HAAQYSRFARG8E3nrJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:39:08"} {"_id": "BDkGLhtqkbtkWiwGT", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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 all f : File | f in Trash implies always (f in Trash)\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PJiMrL4d5Gyua9qdL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:31:13"} {"_id": "3LkvbQFnzopXqfuFa", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n all f : 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": "y45sbiRWj7ANfQGn7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:47:59"} {"_id": "u5vbWnHmbWYXkSFJu", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File | (a not in Protected) implies after (a 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": "WdbXzmF2PXgyq2EF5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:39:12"} {"_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": "YkkjyLePqL3ioAG6C", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | once f in Trash releases 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": "iqHMwdeWAsiNN4G8R", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:58:58"} {"_id": "DqgEuWcP3xvwoN9Dt", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tall f:File | f in File-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": "K5tyeQbT3LfBASAJn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-13 00:06:42"} {"_id": "mD569Bu9uNYEXjmyR", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t File in Protected historically File 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": "LdjLamDxbQEAJ5BEm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 23:07:59"} {"_id": "rJA7xK46YrL9CXy9m", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig 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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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 (all f:File | f in Protected implies 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\teventually 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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "DK9MCxfBju2bCJLod", "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": 513.5999755859375, "y": 132.75555419921875}, "File1": {"x": 513.5999755859375, "y": 265.5111083984375}, "File2": {"x": 770.3999633789062, "y": 132.75555419921875}, "RejectedBySolution": {"x": 256.79998779296875, "y": 132.75555419921875}}, "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-12-3 09:46:54"} {"_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": "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": "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": "Et5DXGYxNyG8ju55f", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 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": "QoMsFjq5rhjLKyMEB", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:37:54"} {"_id": "Bj6c38YrZLQqhCLw3", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 in Trash since (f not in Protected) )\n}", "derivationOf": "dinucYN46thi96vWv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:33:49"} {"_id": "jFKADiBEt6HyhEFq8", "cmd_c": true, "cmd_i": 5, "cmd_n": "prop6Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "anEJpJyFyYoJmMkCP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:38:29"} {"_id": "Tp43sxdN4mnbqRjbr", "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 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": "XrpZFmDj95W7WCazZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:42:05"} {"_id": "oLymwBnqKWWFvYgWL", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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+f.^link in Trash)\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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "y44q8N5girFxzcPkZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:35:05"} {"_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": "dgE2vp9XXsjHrXwE5", "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}\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 since 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": "4D7oeP84Q5sjAGyB7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:01:45"} {"_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": "vDcHr5cxhD2rupry2", "cmd_c": true, "cmd_i": 13, "cmd_n": "prop14Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "dCwqxpi9TR75sChjF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:39:13"} {"_id": "bRA5uREbPGFEgfRKx", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\tall 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:File | f in Protected implies 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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "Y7rwZ2tdBysHARz9f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:13:33"} {"_id": "xMeDQ8yKSCifPHwXS", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p:Protected | until p 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": "CLcEMYjpzCEcYFLFu", "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-12-14 00:15:03"} {"_id": "NmddHWkMCJHf7YH5u", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected | always (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\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": "xq6y5SHniythpYLBt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:31:51"} {"_id": "yYZPJYvyP5nAr3SBP", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 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\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": "iS75adyd7di8zyDKD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:42:13"} {"_id": "zP93k5eymZdkZNwok", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "oZMQZo6XibMS8i3JK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 15:16:57"} {"_id": "e7JvZWTpyyLbiggkE", "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 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\n}\n\n// some file will be 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\tall f : File | always (f not in 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": "6iGgyaW5sdnLQPzNt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:28:31"} {"_id": "nBLAW6QwHAgEtfy8N", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after 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 in Trash releases 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}", "derivationOf": "xCDHQBghgE5j2cRYz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:21:30"} {"_id": "8GpP2FqC4kmZEuHzZ", "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 \t\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 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": "8QqTuzz8MHyN4R77e", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:07:23"} {"_id": "JwWfPTJgB6yanZovk", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 some f : File | eventually 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": "NnqDMhCdvD7tnWSpX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:55:38"} {"_id": "dZCEf9hmJ2ocne3CJ", "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 some f: File | eventually (always File = File - f)\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) since 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": "2QrKhikSbGN8b7NNZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:57:40"} {"_id": "SSYZ8jfA7oXbnYCoG", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "Xs7nft8MboucJAuAe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 16:01:50"} {"_id": "JHp9uM6Hmet964qgS", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "DRu2KkYFyFjD5dCG8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 01:05:32"} {"_id": "jiNy2qy4m4dEJSrJo", "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 + 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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FCvdYeTPoQN9WWh3P", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:59:14"} {"_id": "G4r5nRtWKtYk89Qfk", "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\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\tProtected since 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": "ZmCgjnm9Nyr4uWg2S", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-29 21:46:23"} {"_id": "WJfZbXHE7N2vQ5WnK", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 always Protected since 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": "ZxBrA8BzhdrFTgQoT", "msg": "This expression failed to be typechecked line 68, column 2, filename=/tmp/alloy_heredoc4715395431340324278.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 22:28:05"} {"_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": "qigDthW4NF5DAureh", "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\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\t\n\teventually some f: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": "AciZExGvq4JCFCGsy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-12 23:42:34"} {"_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": "y9uukR6J2g562WYSz", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link 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 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": "eeXbRQjjB6DRzzJ7C", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:26:25"} {"_id": "kAy37bB27mKoMKjEH", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n\tno File implies after always some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \tall f:File | eventually f.link in Trash\n \t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uFYcusLGQaQj4F8NH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:41:20"} {"_id": "YXWfygSM7MJQ4ZZJG", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 some f:File | f in 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": "biMGLGzX5Ap3kzfYW", "msg": "The name \"Link\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-16 18:04:11"} {"_id": "x4QAbTaNK3ZMsiyqK", "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 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\tall f : File | always (f in 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": "R2hpMFWEGsa5AkDrS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:26:34"} {"_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": "x8YexHDzwPXdHMg8e", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file 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": "Wk7gHg24Tdu28wzgE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 02:49:17"} {"_id": "byzXLZtZcP5ChDZfp", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n\tno File implies after always some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 | eventually f.link in Trash\n \t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kAy37bB27mKoMKjEH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:41:45"} {"_id": "uKt389SLiE8NtG66K", "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 all f:File | f in 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 f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\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 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\tall f:File | f in Protected implies always f in Protected\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3oLqYbqMdAzuJjT99", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-11 04:39:13"} {"_id": "M8HEkB3ty3qdc5QSi", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\tsome f: File | always (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": "QF2KMMesZYfdc4Cfi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:22:54"} {"_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": "5f2Zj4QtqmhFvNkXj", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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": "zW78nu4pztitRhkAB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:49:04"} {"_id": "8Ri2MPYmhx9LeGGfb", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always f in Trash releases f' 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": "gGdFbSmZxewp5qhWA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:58:27"} {"_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": "Qh8SBmpA9u5N2v7H6", "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 (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 : 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 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 : 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 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": "ibt6WP5ZxQ7wg4ugs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:37:18"} {"_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": "C2iKMiLozehAErT9H", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 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": "jiQwnJEALokD3fRJn", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:37:21"} {"_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": "TuwaxqAH9GK9LsaF6", "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\n \tsome 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 \tsome f: File | eventually 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": "e8ivcA9jvkF7k8f5o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:45:14"} {"_id": "AxHPNXdpYyiB7BaYQ", "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 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 \talways all f: Trash | once f in Trash implies 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}\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 | once 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": "247XXHa4Z7tjM6urJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:34:40"} {"_id": "Z2hKqTddpSympdv5u", "cmd_c": true, "cmd_i": 0, "cmd_n": "prop1Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:38:08"} {"_id": "JAuk2hnAL237s5Kov", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n 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 always all f:File | (f in Protected & 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 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": "AZt3xv3xeywYwNu7M", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 18:22:26"} {"_id": "eq8YXihFtMyZHqjMN", "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 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 \talways all f: Trash | once f in Trash implies 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\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// 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 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\talways all f: Protected | always 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\talways all f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "J7yiCPrHE3LWH7TRr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:22:25"} {"_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": "wtky82qAFaGjbApFZ", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "3zeDXov5MCGgBx76y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 01:01:01"} {"_id": "AJkiPYkGb8Q4scSKp", "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}\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 always some File\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n eventually (some File 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": "JZasiJQsb5EGquFJ7", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-3 09:03:03"} {"_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": "Y9vZE8ifZtgpw33Ea", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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": "ibSP4XXeNFtSj5bbR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:26:11"} {"_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": "XwvAibc9oS5xTdMz6", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "PfuF7Q77ek5ezKJ5f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:15:50"} {"_id": "CxLHDwzC438TT7xBx", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "9AdpqJRDYFTAFydFk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:06:12"} {"_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": "stAeeMZLb3SKfAaQr", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 releases 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 always once f in File-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": "TSvSdhcqPa9jGMc5Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:48:19"} {"_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": "txnkQYFkbTm669C5Q", "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 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 all f : File | eventually 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": "E6fcZ6H7Go8n7sEJ7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:59:08"} {"_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": "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": "xS37R5LMwQuriZdGT", "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 historically (no Trash and no Protected)\n\t\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 eventually (some 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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no (Protected & Trash) \n}\n\n// the protected 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "YFXNaM9XzJK6LTh3L", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 22:29:24"} {"_id": "onwuR33hCqkXNiueF", "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\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 : 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 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 : 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 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": "koaj2Tqmh87MvbsZ6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:34"} {"_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": "HTiDkhsqAjdtMxmfo", "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 Trash\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": "aAJW9ycaoxwMR2iF7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 16:20:04"} {"_id": "Jt7aZ7uWetgMxwde5", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n (all f:File | always some (f &Trash) since 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": "sWnj79cznnQ3vbfai", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:05:08"} {"_id": "hiNekE9anMhDL8YTR", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 \t\n}", "derivationOf": "SdRLo2fQGPsnm6DnN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 20:30:30"} {"_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": "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": "RkNcvzWa43vtQz688", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tno Protected' & 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": "E5i7YLByo3qF63joN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:29:38"} {"_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": "tj6N7eqM36nZ2EtEs", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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 eventually 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}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "aghPqh5yA8CfQm7Fq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:14:57"} {"_id": "WYik43rk5PJ8mJsht", "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}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways in Trash\n}\n\n// some file will be 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": "dSpCGWS6jnqY89dWt", "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-12-1 12:10:12"} {"_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": "BYJCvT4be3aQW3NZi", "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 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 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": "CqfLLPxLgRQSLfqrS", "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": "2021-1-14 00:15:24"} {"_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": "n3jF8ae3BzdRQfzsB", "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 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 | eventually f not 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\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// 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 always no Protected & Trash & 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 always no File' & File & 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\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": "xYPoopGZpWcQGr9C4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-8 00:57:47"} {"_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": "kZweX6LFiGTLQMhH2", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t 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\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sFjrHB2xfpyT9oGKd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:40:31"} {"_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": "sAxqqPYG4LsKMRKM9", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in 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": "PCjA78DeQEfEsoor2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:46:56"} {"_id": "mgGzMJ6uyrvbZqWCB", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\t (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\tall f:File | f in Trash since f not in Trash\n}\n\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 after (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 | 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\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": "uQzKWo23SXGjWoAsY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:40:09"} {"_id": "oXjNJzPnsn5YKa4fK", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 some f : File | eventually 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": "CK44KrraSQxCeL7eu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:15:56"} {"_id": "ta3h92JwuoSLwF3gh", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\t(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": "np3sPLYhD7TrAPrCX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:30:59"} {"_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": "cg9JKXsr6mmH8zDMD", "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 no (Trash + Protected)\n\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File implies eventually 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": "EtvtqtxGH72PMh5TW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-9 03:17:56"} {"_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": "yPX6waxLe2efSy7xt", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t all f:File | once f in Protected implies always after 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\n}", "derivationOf": "aDd9mj4oEpZ5nx4hL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:01:52"} {"_id": "Mt4xWaKFKc28QcBkX", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\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 since f not in Trash\n}\n\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 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:File | 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\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": "uuTNQ9nnJFqh3JxYt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 14:50:39"} {"_id": "6yu6TYTZcX4Yq9iW3", "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\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": "2021-1-8 02:44:29"} {"_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": "S3xSujqdYLGizBLra", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | once 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": "JHQTRng36N8PkFDBx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:49:46"} {"_id": "ggLDkPyvAiDv4tXnW", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "joNHsMmyE4BibxrdT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:06:57"} {"_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": "3PxAdiJyeos3W4Qgy", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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 (all f:File | f in Protected implies 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\teventually (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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "P4pyaGqdW3mtaES6Q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:44:39"} {"_id": "8MvyTfyXr9NHhy7SK", "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 + 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 | eventually 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 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 always 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 always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "n6nZip5db4eiRkvh2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:06:52"} {"_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": "XNszpER3tNxTyyr6D", "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 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 all f : File | f not in Protected /\\ eventually 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": "txnkQYFkbTm669C5Q", "msg": "Syntax error at the \\ character. HEX: \\u5c)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 12:00:03"} {"_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": "KPuXEoLxCthaFaK44", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\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 & Protected | 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": "MBoXwwtxeab76x9oF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:42:23"} {"_id": "B3vEdA5ijeAo69fGc", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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\tonce 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\tall f: File | always f not in Trash before 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": "dvYsgwWpcLuWw2yex", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 22:05:59"} {"_id": "YyfNaSNzzmz5dji4m", "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 - Protected | f not in Trash and 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": "j7j47iYPN8j4zdN9M", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 19:54:05"} {"_id": "LPhnitSJSYXWDQmib", "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 \t\n \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 \tsome f: File | f not in Trash implies after f in Trash\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\tsome f: (File - Protected) | 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": "bPiQfXRAn4MdcrSZv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:59:58"} {"_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": "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": "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": "nsscKreaNJjm2zscG", "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 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 \talways all f: Trash | once f in Trash implies 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 all l: File.link | always (eventually l 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": "yWxvRkor4ZSSbYoYw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:39:42"} {"_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": "9JmzBBYeiLsiPsMR4", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 p: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": "LnmvDJpEsJ6P9Yx8x", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 17:16:46"} {"_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": "9PA4xDR6T7pBwzxrM", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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.^link 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "tNbxqK3WZCfXWQnfG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 21:54:44"} {"_id": "FGNX5r2eZGNhXmnAc", "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 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 once all f : Trash | always f 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 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": "rqi6Lbbd8j9iiXgwq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:33:10"} {"_id": "sw3jAvSRSnvfdrJv3", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n \n always (all p: Protected | always p not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n always (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": "qey8rJWqMjqeEgm8D", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:29:40"} {"_id": "7RHmrouNQGBbuCe2z", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 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:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "35AWzDBDLbLPPRTCk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 17:17:30"} {"_id": "zW78nu4pztitRhkAB", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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\t all p:Protected | p in Trash implies after p 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": "ffEziq9oLWd5BDGHu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-13 23:46:52"} {"_id": "KTk2dCuBFy2eXqtcg", "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\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": "NGqY3dnG2Nv6yThbX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:39:29"} {"_id": "TbGZB9nGsWQRixgnM", "cmd_c": true, "cmd_i": 3, "cmd_n": "prop4Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "8Sf9GEuRHpZdr9cfm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:38:19"} {"_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": "JQm3HzKQi7tp8Ay25", "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\talways (eventually some Trash)\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 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 p:Protected | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "x9avRyBeMn3wxL8Nk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:11:50"} {"_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": "8eyLPF4Gszk5Cfsoi", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : File | always (f in Trash => f not 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": "REmKkFiPJWmQJbzX8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:39:20"} {"_id": "Da6xrKzokJHydjx7h", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "duqgxhPWGKfegfRfe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 15:22:35"} {"_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": "xXFkfxYA9FQBFMAvZ", "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 (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 : 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 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 : 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 once 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": "HpXKWRg9xFJT36Yae", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:29:43"} {"_id": "Wjz5cbEi6YasADyfm", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\talways( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t(all f:File&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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "BiJovwPzvDjwWj4P3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:27:50"} {"_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": "n2xsfTyvSSmecBZsQ", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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": "3tEPfDoXLPb2K9bFf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:31:12"} {"_id": "PtuRC6uK7KWcvo3EH", "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 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\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' = 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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "5fuwzwmajggWewEQS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:59:30"} {"_id": "6kAZZa2gvpncMdiXH", "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": "ig96tXQmqoBCEGrsA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 16:13:43"} {"_id": "BjBMnkH3Dnn55jeH6", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\tall f:File | f in Trash since f not in 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\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": "YX2weFnzaa3GeMzQZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:30:05"} {"_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": "eBtjPxz4z6qiZzdBR", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "XktxNLou8DCP3Wb3s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:33:58"} {"_id": "omY7RGbFM2g3AySaM", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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\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 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": "KeqFJMEenrvkaWFvf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 13:51:23"} {"_id": "oBBAfr2MSnqdk2su3", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\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\t eventually (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\tall f:File | f in Trash since f not in Trash\n}\n\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 after (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 \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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "z7PuMBnCRSardiTQR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:42:40"} {"_id": "PcLT9oKoXiB8EgsAN", "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 \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 : File | in Trash => always f in Trash\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": "WkghwLwBLDR9ei67q", "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-12-2 20:14:01"} {"_id": "J9uasp5Xb2aEnb3iC", "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\n \tsome 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 \tsome f: File | (once f not in Protected) implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\tsome f: File | always (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": "F4KvQH5yN49NhZHHk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:14:33"} {"_id": "afbgGFbSHDtr24NzN", "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\n \tsome 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 \tsome f: File | (once f not in Protected) implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\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": "gnFoE9QfWSa9jMSwL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:11:01"} {"_id": "8Xb4S33KenpGcH6k8", "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 some f: File | eventually no f in Trash implies always no f 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) since 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": "yG9ekY9CGnvCDTkJP", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:59:19"} {"_id": "qB8BbuxpF9TiGbhs4", "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}\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": "Tmz4dnLC9MCyXJZEM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 17:54:12"} {"_id": "P39yawp86TdtCRzxB", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be 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-Protected\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "9mvk7rRX744CbJvz2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 02:52:17"} {"_id": "9EuxsNedFa6nc8agR", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (once f in Trash ) implies always f' not in File and f' not in Trash and f' not in Protected\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "becBYputd3d9bHMNw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:03:36"} {"_id": "EfwsPKmAEvnuT7SDT", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |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": "nBFTXZxHqLuXQwKm8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:35:21"} {"_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": "SpJynFtRXWFTHSpCs", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "H2C2nc783AX5n2b4Q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:18:41"} {"_id": "B6T789diHuTuDpwwD", "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\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\talways no Protected & Trash\n}\n\n// the protected status never changes\npred prop10 {\n\tall f : File | f in 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": "5dv8ydxGdcADWckD5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 20:10:51"} {"_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": "R2hpMFWEGsa5AkDrS", "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 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\tall f : File | always (f in Trash => after 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": "WKzs6TYHRGQSaffkb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:26:25"} {"_id": "42YNTimfKModwcv4s", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually 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": "mzeWk2succAoNC9Gr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:45:45"} {"_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": "2dbmYmsKijt74gStS", "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\tbefore no Trash + 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": "b66mNe8q9TKQxuCw5", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-19 09:11:14"} {"_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": "CEeovfmeyHFfMzcj5", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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\tsome 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": "DWsbt7uoxgyERtetK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:36:51"} {"_id": "ZS8a7hW67yFhrr4cc", "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}\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\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\tall p: Protected |eventually p implies always 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BkH6zb7Qu7yNmcSGj", "msg": "This expression failed to be typechecked line 59, column 20, filename=/tmp/alloy_heredoc1170642638248208154.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 12:19:16"} {"_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": "2zxrxKYJNM2FLpXTv", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\n\n\n\n always all f : File | f in Protected implies 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": "dbGD27uLMrKxjoCcX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:52:56"} {"_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": "AiJhKNvWfhQmk5jiL", "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 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\tall f : File | eventually f in Trash implies 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": "Tqpr9rttPZBC6Ymb5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-27 23:55:33"} {"_id": "BkjQXiF35An2S6SbX", "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 some f: File | eventually (always no 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 |(always f in Trash) since 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": "SrcRPkz94zb93akmj", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:58:30"} {"_id": "mzuRyzPMCEzpcZJXt", "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 (File & Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually (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": "oskCzFPFHd49DNQRc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:15:18"} {"_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": "qgyBd25Y8ACe6oyPk", "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 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\t \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\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\talways all f : File | eventually f in 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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "6v6zPJaSHEnHGFrXo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 22:27:44"} {"_id": "yWWXMBmvEZtEuT4Fo", "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 | f not 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 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 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "DJAvFLfNLnHctXjJY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 17:01:06"} {"_id": "8PXGBSXFqdcbX5vSw", "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 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 (File & 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\talways no Protected & Trash\n}\n\n// the protected 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 - Protected | 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 iff eventually f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | eventually f in 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": "Mhgeej24wXvn2dzLF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:30:38"} {"_id": "PJPaLoQR8egSish7s", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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": "8CrbGseYMhFA8jYfB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 13:30:29"} {"_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": "N2sQ9QY7tWpgkdXBX", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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\talways(all f1, f2 : File | f1 -> f2 in link implies eventually f1 in Trash and 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": "6MQ7bCjd8Xmvg3c6f", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:21:08"} {"_id": "JHvpHmymWtvGdfnwZ", "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 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\t \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\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\talways some 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\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 always no Protected & Trash & 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 always no File' & File & 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\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": "xQcirjMhRZf8KKbYk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:22:38"} {"_id": "CTRjdtjPbetR7irLk", "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\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\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zXHR9ug7uNeNfsgqM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-29 21:40:05"} {"_id": "EEaKo6QMrMj5PkgMC", "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\t \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\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": "GSdqcAjND8Ht8fNTm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:05:56"} {"_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": "np3sPLYhD7TrAPrCX", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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": "A7dTJLvqDXNpKahkS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:30:31"} {"_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": "wQMeoKrj9fSHM4tpm", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: File | 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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\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 f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "vqc76iRMmM56qrh3o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:28:54"} {"_id": "zftkfRrbnyMhGR7q7", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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-Protected triggered always f not 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": "jew2y7BRWzWadgQyB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 15:13:24"} {"_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": "KjKmGHPNBevvwLNWJ", "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 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 (File & 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 | (always f in Trash) since (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": "JnfrnSogNM5SaAzum", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:07:32"} {"_id": "Mhgeej24wXvn2dzLF", "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 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 (File & 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\talways no Protected & Trash\n}\n\n// the protected 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 - Protected | 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 eventually f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | eventually f in 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": "jtwSmZpgPsq9Hj5vM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:30:32"} {"_id": "ZvoE2REG6tQfzcHtp", "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 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 | eventually f not 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\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// 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 always no Protected & Trash & 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 always no File' & File & Trash \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' => 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": "hXgoTPrnWYD9qrEMm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-8 01:02:07"} {"_id": "nP2ArmfMeLvNNr3D2", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | eventually f in Trash implies always some (f &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": "rMbrEx6xhRhGhthFB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:59:06"} {"_id": "WdbXzmF2PXgyq2EF5", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File | (a not in Protected) after (a 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": "Xk8GGKEXnudLgaPS3", "msg": "The name \"a\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:38:18"} {"_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": "Xsgguz5PzrthzD2do", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after 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": "vjxBrPcgLcJ8jisui", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:29:32"} {"_id": "Pg7WdHWprLzhMd2vm", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\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\t 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\tall f:File | f in Trash since f not in Trash\n}\n\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 after (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 \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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "oBBAfr2MSnqdk2su3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:42:47"} {"_id": "2Z3qQ4Gu2a9DyhPgk", "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 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 always all f : Trash | eventually f in Trash implies always f 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 always some f : File | eventually f.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n 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": "BEzpHrKzL6X7jLhSs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:43:33"} {"_id": "hgJAPmzJRsPsCS49J", "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}\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 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": "8v3kWrvKWdSSLt2T6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 18:02:41"} {"_id": "uea9qkzurfMX7cZCS", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\nall f1,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 {\nalways 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": "JPvaBMjQ6pM2b4ASD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 23:02:41"} {"_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": "aNgrLG3ZdBKPwYuMF", "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 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\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' = 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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "QS6cySANCTJXecpK9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-4 20:01:15"} {"_id": "FF6iRoRHWWAcqrSnY", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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 Protected&Trash until 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": "Y8vrYcxp73Jq3ymu2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 23:04:49"} {"_id": "BbjuwX944mdQDdRYe", "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 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\talways all 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\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\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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "GFayrD9rHqza9XLYE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:16:18"} {"_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": "oyMgiYkZsy7gWd6aa", "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\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\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\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": "NcFAdMN3996xXjAma", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:48:59"} {"_id": "8vJTEd9BKFBfwMF2g", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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&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 since f not in Trash\n}\n\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 after (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 | 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\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": "BM8acY6B6GXzfZNYw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:38:40"} {"_id": "dvYsgwWpcLuWw2yex", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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\tonce 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\tall f: File | always f not in Trash until 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": "MXdSNPLWtJ6RjAN9z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:05:24"} {"_id": "ZcZoZqQkJ93eW6Q3k", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (eventually f in Trash releases 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": "9q8cbrF2c4LugK7Ba", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:00:44"} {"_id": "2yvBrwC7ndtxrE2iW", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\nall f1,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 {\nalways all f : File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\nalways 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": "wZdg95QKoJbPRYuAk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 23:02:03"} {"_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": "Ptqkd3XYBRLQxEeQA", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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, f2 : File | (f1 -> f2) in link implies eventually (f1 in Trash and 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": "cBJK7SAaNPZfR6A29", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:14:36"} {"_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": "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": "DgX8ebXKPbx92GzBR", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually 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": "jryCvu4PRTeWakubu", "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-11-25 20:02:45"} {"_id": "BjayWJLXfpjP7Cb3p", "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 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 File & 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\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f : File.link | eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Trash & Protected\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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "hGHrLHDFXM9nbEyWe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:33:00"} {"_id": "QpxCDd9cv7hafpin7", "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 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 \tsome f : File | always (f in File until f not 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\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\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 always no Protected & Trash & 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 always no File' & File & 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\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": "hNpD49FrdFretxnFZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:42:57"} {"_id": "L6kpaSGfY2Lo2JLkP", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all p: Protected | always p not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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": "q6SLDscxk3qaL4yY8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:32:29"} {"_id": "dYpCgRqJvxfj6HTuA", "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\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\tall f : File.link | f not in Trash and 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": "mYDYdnaHpg6PHcmjf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 20:01:07"} {"_id": "NcdPrj4SLf8RyhhYP", "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 + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t(historically (no File)) until (some File)\n}\n\n// there is always some file in the system\npred prop3 {\n\talways (some File)\n}\n\n// some file will 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": "dYiKvco3eJzQuWC9q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:51:39"} {"_id": "HD72y2tn8ZH8jDPsN", "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\n \tsome 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 \tsome f: File | once f not in Protected implies eventually always f in Trash\n\n}\n\n\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\talways File in Trash since 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": "PMNMXxu3qRtQkt8GQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:59:07"} {"_id": "xYe7qZoosLQWwQQmK", "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\tall f:File | no f in Trash and no f in 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\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vBfafruaeqDjWMugy", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-14 00:16:46"} {"_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": "FCqL9g23TXxoc9AaW", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no (File+Trash+Protected) \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": "EPtJtZeaZMQcGkfu8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:34:08"} {"_id": "TAkSff5w6XzPzvjCh", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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\teventually (all f:File | f in Protected implies f in Protected&Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "KBb7kkztkQDLeAtxw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:48:52"} {"_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": "PKazG46kWGkr8PKHu", "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 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\tall f : File | always (f in Trash => always f in Trash)\n\n// some file will be 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": "u7DB6TczHkKo8XBZC", "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-12-2 23:21:24"} {"_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": "JTihZnyRo3Z9GeZof", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\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\t(some 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\tall f:File | f in Trash since f not in Trash\n}\n\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 after (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 \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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vTuToM7QEade5RqgX", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 14:43:15"} {"_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": "kGZomLHf6HPz6cHoZ", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\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\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 since f not in Trash\n}\n\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 after (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 | 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\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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "7hA5c3cAeZHcTDzxB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:44:16"} {"_id": "bp2hWG383hsoex5jo", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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": "M92bZhvBztChnJx59", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 17:14:31"} {"_id": "EsFt3yWwPtnzyHPJS", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\tsome 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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "CbgvSGqraspKM49tL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 16:07:57"} {"_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": "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": "x95Wbj7g7dKxfk9jw", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-Protected | 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\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&Protected | 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 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:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "Rs57kKMuvMCuZfWMA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:03:44"} {"_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": "bhjYmp35xpkna6AuY", "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\tbefore no Trash + 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": "SpbQBNT3jy4Mysiho", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 09:09:29"} {"_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": "YNwpJRuFz4jLpHXWC", "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// 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-12-3 08:54:56"} {"_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": "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": "dzFexz4xy97vzDyEg", "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 + 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\talways some File\n}\n\n// some file will 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\talways some Trash implies 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": "BkvFeBCbcd7sWYrYT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:58:24"} {"_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": "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": "X8AfFSKpz3zyheBFN", "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 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 \talways all f: Trash | once f in Trash implies 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 always all l: File.link | l releases eventually l 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\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\tonce 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": "yvf6Fu66vC3ihfuXp", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 21:53:21"} {"_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": "8m8o2yZxSajt2Qn5L", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always f in Trash implies after 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": "DuCLAamNQm8NStmTf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:54:17"} {"_id": "XS52JDeBZCebX9EN6", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\talways all t: Trash | once t in Protected and t not in Protected\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 not in Protected since t in Protected\n}", "derivationOf": "5NdBmFo62S4zckgT4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:40:07"} {"_id": "yGP4mGJQXzwmedr7r", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 eventually no 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": "KkoHp7CDCgSkhNY2x", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:09:29"} {"_id": "FLTzbSpbG6zMnGH6m", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WNuJjPCdzQzErDvAX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-12 23:58:33"} {"_id": "jW3xYHBBX8nMD6wzv", "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 | eventually no f&File)\t\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 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 p:Protected | no p&Trash)\n}\n\n// the protected 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 | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "cbupSTsuMeTwGAdpj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:29:36"} {"_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": "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": "sKQsPWzCAHAZuHeGW", "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 \t\n \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 | eventually f 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\n\t\n \t\n\talways all f: link.File | eventually f in Trash\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \talways all f: Protected | after 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 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}", "derivationOf": "AKkjvuoAZkjY5C7Yc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 01:06:11"} {"_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": "hSsMTocPF5z3MffvS", "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\n \tsome 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 \tsome f: File | always none none implies eventually f in Trash implies\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\tsome f: File | always (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": "JRRZsr7e6CbLYSy9m", "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-11-26 19:20:11"} {"_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": "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": "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": "M4Cw8mKBSYXCtMFXB", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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}", "derivationOf": "wXQaBJhEbYyHgRYSf", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:45:48"} {"_id": "h8DRqHzrLPptf2c2H", "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 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\t \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\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\tsome 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\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 always no Protected & Trash & 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 always no File' & File & 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\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": "QquBpcutGB87jEtfJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:22:24"} {"_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": "Jmzt8XJPqsXGMMsym", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 | eventually 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 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 eventually some f : File | eventually f.link 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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - 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 : 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 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 f : File - Protected | before 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": "7JaQNTERfBw7pmEYA", "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-11-24 00:05:13"} {"_id": "oFgCEKJMbEdJNZA9j", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 (File.link in Trash and 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": "62ipFbaKuvkhD2AMC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:23:57"} {"_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": "QKaKjEdzeAXuta6PN", "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\npred prop2 {\n\thistorically no File until 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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (some Trash implies (always Trash 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": "pvFa7vWHZ8aEmb9xT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:01:46"} {"_id": "NA4yv5YKrhLNPzTyz", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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\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": "oGxhHNLrGTGjfowsn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 17:09:59"} {"_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": "tZ9C2Yve3MAncuXKg", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link in Trash\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 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": "G9tbbKTJGCzKW4b7N", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:20:34"} {"_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": "XkpEcBmqmHmxXqTEw", "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\n \tsome 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 \tsome f: File | (always f not in ProtectedI ) implies eventually 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": "y2gLk6FuZsmsP8ZH9", "msg": "The name \"ProtectedI\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:44:21"} {"_id": "9vyBE2fQcExZQ8BQP", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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\talways (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": "CEeovfmeyHFfMzcj5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:37:10"} {"_id": "tzhJwFmkvRwXSRYLX", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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\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\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": "kSAKNN9tNjKsuEhYH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-3 00:04:29"} {"_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": "4x9iwKz5EeKTpti4u", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "6iQ5NZHTdpYP8MiPu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:07:15"} {"_id": "s89JQ4B3NPB9LWk7z", "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\tonce (no 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 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\talways (f:File| 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": "JTyGueweydrY94TYE", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 22:54:29"} {"_id": "64oYrjfbZ3Javnd7h", "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": "PrxNE8gBvn62h24NQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 15:00:02"} {"_id": "Tw84fYW8Q3ewiorkw", "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 | f not 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 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 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-Trash | f in Trash' implies always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JYiTvujCkKbYynmEi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 16:53:19"} {"_id": "eNny5AEfbXh5sryRo", "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\t\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nGCTfmosghXb2fBAb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:18:43"} {"_id": "uyrtZoKPHBxSHeSxF", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: Protected | f not in Trash and always f not in File\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "39ghxD27cHXvfYiBm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:40:40"} {"_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": "vrsn8WQMToZeAotNj", "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 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\talways no Trash & Protected\n}\n\n// the protected status never changes\npred prop10 {\n\thistorically 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": "Cc6Z2jWHXukv9iuBG", "msg": "This expression failed to be typechecked line 66, column 2, filename=/tmp/alloy_heredoc14900166577082600113.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-27 23:59:35"} {"_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": "5fj2AoKQCEnGXWm5X", "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 once (no 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": "m97dHydjhETrCdTZm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:18:44"} {"_id": "SZHzpZKNTwudo4i5w", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always all f : File {\n (f in Protected implies f in Protected)\n (f not in Protected implies f not in Protected)\n }\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "EWkivqWEA78e7hZzJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:54:27"} {"_id": "f7hj5rXHmJhAweSYC", "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 (some f : 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall p : Protected | always 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "APHvFwQPL9Fi8E7yQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:20:14"} {"_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": "akAJZsP4GDKBmRybJ", "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 | 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\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "g3mCmiYJzr7qp9b2t", "msg": "This expression failed to be typechecked line 66, column 2, filename=/tmp/alloy_heredoc1040533284335023546.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:19:26"} {"_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": "iS75adyd7di8zyDKD", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (f not in Protected))\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t(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\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": "sPg8udPdwF3z3pTzg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:41:41"} {"_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": "ZcbmBBzuqS5JcAtoo", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f always Protected since 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": "qbHJsZ3WM7ghFZdzC", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 22:30:04"} {"_id": "6iGgyaW5sdnLQPzNt", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "WLLfwD5DjoDsRQBmZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 23:27:39"} {"_id": "sYbjm5XN7ZNm9Btzq", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 releases 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": "Ye6k9WgSfb6coqJi4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:42:59"} {"_id": "4B3HwzsKWAbeCvJK3", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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:File |(always f in Protected) since 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": "aX2LvhvNxFCooofgc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:08:28"} {"_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": "snDmP9GBFrXxvpFfM", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually 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": "pvTkz5hzxwi7xSowv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 22:51:30"} {"_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": "nYoRKEP5M2MHRs8fn", "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 : File | f in Trash implies 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\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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3jzZRpySdp6WwKJXa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:47:39"} {"_id": "eF49T9AL9oFSFCpXs", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "5ZDCvrepHpvR95viC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:07:24"} {"_id": "8ZosTdKugDXSvYJPT", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 releases 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": "sYbjm5XN7ZNm9Btzq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:43:08"} {"_id": "WqSZ8shfynR736TXY", "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\npred prop2 {\n\t\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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (some Trash implies (always Trash 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": "EFHWakmnHeNPqrRAs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 17:59:28"} {"_id": "e5Q3nxGTbgJK5vw4u", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\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": "SdYAKhKCBTk57sJmD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:07:48"} {"_id": "hGe8agrkzFKZAErXu", "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 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 | eventually f not 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\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 eventually some f : File | f in Trash => after (always eventually 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 always no Protected & Trash & 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 always no File' & File & Trash \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' => 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": "fcT9RNsjX22mhTsq9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 01:04:12"} {"_id": "ZQD4BpwKEYiBEEG6E", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n ( some f1,f2 : File | f1->f2 in link implies eventually f2 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "daMYYTMD4fzhLpMmH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:43:46"} {"_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": "pQYbN2cq85s94CDcv", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link 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 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": "pcQMYo6AhMtzKmpyA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:24:41"} {"_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": "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": "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": "x2jHDQzWR9D5xG2h8", "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": "2020-11-18 20:58:14"} {"_id": "mn7f2W74aqtiwqzsw", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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\t(all f:File | eventually (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": "ayJAzjpagy5B3CmXy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:49:46"} {"_id": "njc2jA43rLybwHZqq", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 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": "pR4pffvuBhke5mZD6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:33:11"} {"_id": "YwzhpAvPTapMkKXjC", "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}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f: File | f in Trash since 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": "NW6cJ4pz3ZxXbeX6w", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:50:18"} {"_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": "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": "vXNwkB6WWMzeD8EFu", "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 + 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 | eventually 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 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 always eventually File.link 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 all p: Protected | historically p in Protected and always p in Protected\n}\n \n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | eventually 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "MrieKkxj52sFLSQLH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:20:58"} {"_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": "8m7zW8vfchkXxudvu", "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\tonce(no 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 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\t always (all f:Trash | 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 f1,f2:File | eventually (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}", "derivationOf": "xiE8kXPqQcXDGozq9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:55:39"} {"_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": "ZvYvuR65ittRFo7dJ", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 Protected & Trash) implies Protected & Trash 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\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "T3j4Cw38K4S7CdvYK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:40:18"} {"_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": "QEWMA4CMv877XZRqH", "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": "s2AmDPTSRLZvSnR9F", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:09:55"} {"_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": "DGdJeR4xkQBtqRbCW", "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 Files and next some Files\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": "KvzmGmsfpbRioCf8M", "msg": "The name \"Files\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 14:59:14"} {"_id": "35FJB7nAAnorhExG3", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\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}\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\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 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:File | 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\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:File | f in Protected implies (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": "jKDDyHvCivqqpcuJP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 14:05:20"} {"_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": "kGqHn4hm76t8kQrXZ", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & 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 triggered (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": "wSmKhQ2yBLyWWFyaC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:49:51"} {"_id": "mgawvb2v2SpTG9Q6x", "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 (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 : 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 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": "WqYyEwwgvTTkDhfT3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:25:28"} {"_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": "WqYyEwwgvTTkDhfT3", "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 (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 : 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 after f 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": "9R3s74d5bANnP8N5N", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:25:13"} {"_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": "od2SNr5aTZZqE2p4F", "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": "zEtQFuXz6HoESmcNN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:06:08"} {"_id": "HxSL2v8YsSSN9wvo8", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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 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 (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 | 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 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": "sPQMeLkFBtWSsQnQu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 01:02:14"} {"_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": "2qSHcnkH5jGCHG3mP", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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 : 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "eBtjPxz4z6qiZzdBR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:34:10"} {"_id": "qdt9m7a49jDm9LjKd", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 : (File & 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": "njc2jA43rLybwHZqq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:35:09"} {"_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": "eDSke8zq9RTDjuGJC", "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\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\t\n\t\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 after always f in Trash\n}\t\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": "Ghwsm2GtPkv6gs5sK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-12 23:48:03"} {"_id": "r6SSQM23E4R6yHagq", "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\n \tsome 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 \tsome f: File | eventually always f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\tsome f: File | always (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": "JcJM9hYsvqu5GNwoD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:16:40"} {"_id": "WDLywmrv5tSecRnZR", "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}\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\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\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": "DdnwMS2xyJtELEzmt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:30:22"} {"_id": "D8LkeyJN97hgEK5Sj", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "fMAcoAi8NDpEDdgbG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:46:22"} {"_id": "RRC5EvnTKvtiBSksF", "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\tonce (no 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 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\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\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\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}\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\tall f:File | f in Trash since f not in 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\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": "stEb3ubYdTc2PA3Wk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:12:36"} {"_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": "LcAkLqBLD9hDdqT6L", "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\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\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": "winBwBjhkRtZMmPjs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 20:07:50"} {"_id": "KnFhxTWLofxtqsYqH", "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\thistorically no 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 File implies 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": "5xAR4on3L92uxLuMk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:46:22"} {"_id": "LqApqcd8cnyqT6sEZ", "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": "2020-11-14 14:20:56"} {"_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": "gDrYHbd4cTFHeprbk", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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": "hAQeNe2XPzBjY75Lk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:51:27"} {"_id": "nLEuyd3p2ospkGPri", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "yzcaG9b2NWqLuFTRz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:08:15"} {"_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": "77QdEbFCBReHRk6qy", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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.^link in Trash)\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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kN6bHcKYpNmgkdBzE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 18:32:28"} {"_id": "TiNMtP5DK6QPsuwMN", "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 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 (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 : 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 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 : 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 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": "DQvnswWHgqBXjCtou", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:14"} {"_id": "WMZQLJ7WG676NYG5b", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-Protected | 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\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&Protected | 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 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:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "LZcQMRx4GZrqfY6Zy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:04:39"} {"_id": "eQ8pEi235ATsLssts", "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 all f:File | f in 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 f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\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\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}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JNGyrZJFoj3JKien8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-11 02:07:10"} {"_id": "xxFnhn775PmaLNDHB", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JamJf4m2iQqnkk8Sd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:27:14"} {"_id": "bWoHCvdX8B3bE99RH", "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 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": "s9yX29jhHJgTFG5mZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:16:26"} {"_id": "umd8WeTYthg6pgzgR", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link in Trash\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 after 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 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": "TKn8zYtDBgPAHJfkm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:24:15"} {"_id": "B53CAq4ynmyEr4sDJ", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 all l : link | eventually File.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": "sL2kCgSTo2fLQYPuG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:02:45"} {"_id": "QgZEd8YMmAoPCFhtL", "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}\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\talways some f: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": "9jPK8KBWzjFmBx4Hb", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-12 23:35:01"} {"_id": "eB4ELgfC7M9fiCLD2", "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\n \tsome 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": "bjTbQdwn8fa4bahFb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:41:00"} {"_id": "7KbijQrae8FEPxGd6", "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 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 \tall f : File | always f in Trash => eventually f not 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\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// 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 always no Protected & Trash & 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 always no File' & File & 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\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": "cuDe5eXjzHxtyJTCj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:52:24"} {"_id": "FJKbCv7tHhhez5Y3d", "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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File-Protected | f not in Trash and after f in 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": "bTqLGwhq7ppy5SMsv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-19 19:58:57"} {"_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": "suFggvjHudbCJnxX7", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after 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}", "derivationOf": "XmdaWDccWGNkjQGNn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:03:51"} {"_id": "6mwmhQpg6JPQG7tDm", "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 no File\n 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 f : File | f in Trash)\n\n}\n\n// some file will eventually be deleted\npred prop5 {\n \n\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": "H6Q8gGbQGh3ngNk7w", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-3 09:04:49"} {"_id": "Kihtd4pxm7NPGKqDv", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no File\n}\n\n// there is always some file 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": "FCqL9g23TXxoc9AaW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 17:35:28"} {"_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": "pKxdDmySd7wDMxuo9", "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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t (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": "Kf5g7RvTveqzffh73", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:32:19"} {"_id": "iqHMwdeWAsiNN4G8R", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always f in Trash releases 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": "8Ri2MPYmhx9LeGGfb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:58:36"} {"_id": "7T5HwvELfXM82C2FC", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "xxFnhn775PmaLNDHB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:28:54"} {"_id": "RoXhZLWpwMdYzMfye", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\nall disj f1,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": "Tbnd6jutRTM9yPES7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 22:59:44"} {"_id": "iBuCCYaffGruXc7en", "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 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 File & 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\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f : File.link | eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Trash & Protected\n}\n\n// the protected status never changes\npred prop10 {\n\thistorically Protected 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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "77DjdtAzEhzcQG7Xm", "msg": "Subset operator 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": "2020-11-28 00:35:40"} {"_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": "eKChcb37BHi7v3746", "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 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\t \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\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\talways some f : File | eventually f in 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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "KXsgZ57MqBKsYpigv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 22:28:37"} {"_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": "pxnuWDiuSxvjYdsmD", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after 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 always 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": "M5pfAPPtiugcnDTvC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:16:41"} {"_id": "gzmK2zyjetyCjYCTk", "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 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 \talways all f: Trash | once f in Trash implies 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\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 p: File | always (once p in Protected implies always p 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "sDTGqACYWMcwiBASJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:42:37"} {"_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": "nmoXemvx3Z9LadB4o", "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\npred prop2 {\n\tno File until 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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (some Trash implies (always Trash 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": "E4KnS9bFJZ2DC59Du", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 18:00:44"} {"_id": "FQucdRZ3hwnrWwjh6", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually f in Trash\n\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\talways File in Trash since 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": "ZNhNygntiCocry692", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:56:48"} {"_id": "7vddwrKdjS4yvo4JN", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\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 & Protected | 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 => 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": "KPuXEoLxCthaFaK44", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:44:58"} {"_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": "iYptypBLoDASSyrve", "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\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\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": "jE3d7Kv78zF9ZQrNA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 20:09:44"} {"_id": "qCKtMD6ZwWpMK8ZJx", "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 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\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": "ZHWD8JWxMtHvJuLd5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:18:47"} {"_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": "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": "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": "C6WkKuRJetBZasLgc", "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 (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 : 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 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 : 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 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": "6cCjj4FQEitTWTLWR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:41"} {"_id": "EhKNJaYbKGRJktbyk", "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\npred prop2 {\n\t\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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (some Trash implies (always Trash 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": "QKaKjEdzeAXuta6PN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 18:02:11"} {"_id": "BAymGgHYXnBk4NENn", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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\tall 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": "9vyBE2fQcExZQ8BQP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:37:33"} {"_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": "wwp56Raxd56c96qcZ", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\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\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qJotSb3wpFBvm8bHz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:44:12"} {"_id": "LFTo7D6P48saKdk3C", "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 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": "QGbBTmiP5XHcpYc7s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:34:32"} {"_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": "Eot6zHz7fhFXvWnAe", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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 all f:File | historically 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\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": "r3aytxTzdfG33oLoN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:04:46"} {"_id": "HBhcbeoGWqSzwHDgq", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\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 Trash[f])\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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "m3qED7ghmpdpKTaX8", "msg": "This cannot be a legal relational join where\nleft hand side is f (type = {this/File})\nright hand side is this/Trash (type = {this/File})", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:17:06"} {"_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": "xNaDFZiCDN3HAwwjv", "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\thistorically no File releases 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": "yEykQ6y85ELZbTKQM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:39:59"} {"_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": "747zjNTiodknKQASK", "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 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\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' = 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\t\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 : Protected & Trash | 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": "p9Mvq6rsN6DGqtbW5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-4 19:30:57"} {"_id": "kwEbjdKvDMMyfFxmu", "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\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\talways all f : File | f not in Trash until 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": "hyL5Wfa3XyZdcHj3p", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:45:43"} {"_id": "XuiBAhoXMwtmT6Hv9", "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 Protected\n \tno Trash\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-Trash and 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": "3mfqjZBkvJSH2Ksd6", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 19:34:13"} {"_id": "XbQQwYs4kp3cofa7d", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "c3ASEe2gJZ6ahgfxX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:38:12"} {"_id": "ptZgT2jt4qfDSoWzk", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a in Protected)) \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tone f : File |always( 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": "22zRyfABgb5KY5Fkr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:48:12"} {"_id": "uKB6tPcr8Hgyh4pYG", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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": "EH6rHwDNHFoKHgXj6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:59:52"} {"_id": "Bn7YrcAy5q2cTjY38", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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 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": "L3yfCEFsitKNnbQ2i", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 04:01:54"} {"_id": "C84k6QMnWaBNrbB6z", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all t : Trash | after t in Trash or t 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": "hbpqxfxw8jo66EjcY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:38:55"} {"_id": "2SvjsGJBJaacFMw39", "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 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 \talways all f: Trash | once f in Trash implies 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\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 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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "i4qES4tjLHhnTtfuv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:36:04"} {"_id": "zcgWZHZAL9Yke546e", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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 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": "AT8sX7EyBNujPoji5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:45:04"} {"_id": "BhyAsD2Xh8h5k57wS", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 eventually File.link + 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": "yGP4mGJQXzwmedr7r", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:13:34"} {"_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": "PtoYj87odL3tCBaSR", "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\n \tsome 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 \tsome f: File | f not in Protected and eventually f in Trash\n\n}\n\n\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\talways File in Trash since 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": "D78Gv4pcsfwauwr83", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:52:56"} {"_id": "porWs2KaACnYe7hRm", "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\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted 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 : Protected | f in Trash implies 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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-27 21:13:24"} {"_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": "8QFKLjEfhsPYLC5Dv", "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 | eventually no f&File)\t\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 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 p:Protected | no p&Trash)\n}\n\n// the protected 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 | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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:File | f in Trash since f in Protected)\n}", "derivationOf": "YsXEjEbkK5xirnQRo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-27 16:01:50"} {"_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": "bjTbQdwn8fa4bahFb", "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\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": "TmzFntZFh6AGFxBwx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:39:59"} {"_id": "nudSLbJXynT3uqxDy", "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 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 \talways all f: Trash | once f in Trash implies 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 \talways all f: File.link | eventually f.link 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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "a82PBrZ2h4hK5JwZS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:14: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": "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": "PwYhpcDmrKKTxcj6v", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 and f in Trash implies always 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": "2Qm2j7aMzHwjwxytv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:22:59"} {"_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": "3x4wXj5FvYL47D3Hv", "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 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\talways no Trash & Protected\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\tall 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\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\tall f : File | f not in File since f 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": "8cTRidQA6iNbfryrb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:17:19"} {"_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": "yyZv62T6cLQW9hKm7", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 all f: File | always after f not in Trash implies once f in Protected\n}\n\n// the protected status never changes\npred prop10 {\n \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always (File' = File - f since f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BMjYPEH2pPCorzoTe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:26:17"} {"_id": "4nykCCrfSuJQvq7qe", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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": "a5FD4nsczCrzBQiSx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:40:05"} {"_id": "yuhRKaE8zyNt7Khme", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (eventually f in Trash) implies always after f not in File and f' not in Trash and f' not in Protected\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sFJ4A4uGMtWTWgteC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:04:28"} {"_id": "ktAuLjrBRp3J7cdK2", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always eventually f in Trash implies always after 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": "QHrPvq32KXJ89NsjM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:55:16"} {"_id": "rb32sG28FHpMqrjsH", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\n \talways all f : Trash | 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": "FnFZ9TGJM3WvMEwKf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:37:25"} {"_id": "SdYAKhKCBTk57sJmD", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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": "axgZpTgTYo5abkdTp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:07:41"} {"_id": "M92bZhvBztChnJx59", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\talways(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": "eYPtFgmkLe5iiry6M", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 17:14:13"} {"_id": "PYQEcJusydYbcK3xe", "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}\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 always 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": "akuDmaWy6gL5efNZf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:48:07"} {"_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": "vEmBT4TXcuMNzCX44", "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\t\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 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 p:Protected | no p&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-Protected | 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| 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: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\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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "TTJtvcuH6GbLk6DDa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:19:07"} {"_id": "ZnA6tYME6DHrzpaYi", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 Trash 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": "kQxfmxcWMdS7g7ia9", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 22:38:16"} {"_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": "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": "9SRJbeKooCFdRHtBq", "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\tonce(no 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 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\t always (all f:Trash | 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (f:Protecteed | 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": "8m7zW8vfchkXxudvu", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-14 00:56:24"} {"_id": "K3ZictQmYZuX79aB3", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-Protected | 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\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&Protected | 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 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 (some f:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "qkgocYGZ6H8zzqARB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:05:19"} {"_id": "sSZ3oZxqj2hC3TT6R", "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\talways (eventually some 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\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 p:Protected | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "i8r6D5cMYbvYypqbq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:10:49"} {"_id": "MewytaRm4ywtAvvgd", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (f 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\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": "PbcZ4LhwsvE9ECP3S", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:34:22"} {"_id": "HsmwxTbC6QBtJZnK5", "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 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 | eventually f not 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\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// 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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | eventually f in Trash => always f not 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": "n3jF8ae3BzdRQfzsB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:59:05"} {"_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": "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": "b3QEc29WkCWEfhd5P", "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 historically (no Trash and no Protected)\n\t\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 eventually (some 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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no (Protected & Trash) \n}\n\n// the protected 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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\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\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 no (f & Protected) )\n}", "derivationOf": "oQTErnzKgHcYBTNtS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:39:42"} {"_id": "6JsAp43W6iNbahrCL", "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\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 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": "zE4gwFkXmqBEkGsRE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-12 01:38:44"} {"_id": "nKGJHjutkWrrdHBAP", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\talways all p: Protected | always p in Trash\n\n}", "derivationOf": "G9XGWNkFtFvSKAYtq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 22:32:50"} {"_id": "Xh6BwHbtNANEZMbgZ", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\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 always some File\n\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// some file will eventually be deleted\npred prop5 {\n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vcWA4NY7PKNxqDNeB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:02:55"} {"_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": "7a5eoS8mDf5Meacv3", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and 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": "HsWJJf4yadb38k4K9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:32:15"} {"_id": "4nYsWmji6Lxb742fz", "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 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 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": "knjZjfJMiDna6pctr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:04:45"} {"_id": "KfyGS2TY3DMhJXZyu", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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": "8wmLZcyTi9nkJjuKw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 13:09:15"} {"_id": "gFDAA89yKKyGvuggs", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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\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": "pJDufLikCrtFB56ej", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:38:45"} {"_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": "mzeWk2succAoNC9Gr", "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\n \tsome 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 \tsome f: File | (f not in Protected) implies eventually 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": "TuwaxqAH9GK9LsaF6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:45:37"} {"_id": "XktxNLou8DCP3Wb3s", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "AsBN7Z8fpR4KLqdbC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:33:39"} {"_id": "Ssvw8SScRHbTW2M46", "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 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\talways no Trash & Protected\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\tall 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": "hskz3DjnELH3Dj7sd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-28 00:06:43"} {"_id": "jYX9xqnq6STnQtme5", "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 and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\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 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": "kykkjMnDB5FY32EaN", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:44:53"} {"_id": "LbavDaMGjciuP5aCn", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always( 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\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "8G5t8aJ3PdjnTaAEs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:05:49"} {"_id": "ZkKNhXF4agkJ7rhaz", "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}\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\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\tall f: File | always(f not in Trash) since f in Protected \n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "K6CgpWxJoqXJbDAcK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:21:06"} {"_id": "Ed3yzHWosqNnHqfdS", "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\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": "WRQWvWPnAMcHEPhm2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 11:25:12"} {"_id": "B4Gg5Puxnz5WQjSQL", "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\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 f2:File| f2 in f.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": "jLcNJwNkEhkDreuCT", "msg": "There are 8 possible tokens that can appear here:\nNAME disj exh part private seq this var", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-12 23:52:52"} {"_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": "qYYcfASWxPHfN6x73", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & 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": "WQWJPk7sBioB2qQeS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:45:38"} {"_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": "dYt2fdQT3wd54qYD7", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | f eventually no File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash since 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": "XW9HrDRZF4yM4iCc6", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 18:43:58"} {"_id": "9jL6M89EguhkkR7tA", "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\n \tsome 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 \tsome f: File | always( f in Trash implies always f in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\tsome f: File | always (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": "TDWTwQscxWWntWyRb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:15:35"} {"_id": "pqpxnQr82vsbPPjZW", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually 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\tonce File in Trash implies (since 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": "hXqpmebzzd2k5gNvX", "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-11-26 11:50:47"} {"_id": "jryCvu4PRTeWakubu", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually 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}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "berynqGSrKpmhQ77X", "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-11-25 20:02:41"} {"_id": "YPi6u4nSwTD4eDMbs", "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": "2020-10-1 04:10:19"} {"_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": "YYoom5BfRLv9usrqH", "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}\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": "8tppbx3iPobJ9C39F", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:09:21"} {"_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": "DdnwMS2xyJtELEzmt", "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}\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\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\tall f: File | always(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": "vqLsvTJBsSbSHMXga", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:28:18"} {"_id": "agEbYBK69Ay8hQ6X9", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |eventually (always f in Trash implies always 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": "B2yfNAYWXbfjGGAaY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:13:00"} {"_id": "iuWF5QZN2TKLAWs3K", "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 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 \talways all f: Trash | once f in Trash implies 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 (always link.File 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// 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "Z99oq6LX6h6HX7DT8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:05:26"} {"_id": "LjdPRkfuHfKGmxkNS", "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\n \tsome 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 \teventually File 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": "miYv24Ffcy7HQ4Bzu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:41:53"} {"_id": "XfwCReNqjWPNQtMeY", "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\thistorically no 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 File implies eventually 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": "C76BoKczxhwFPgpkj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:51:22"} {"_id": "fa6RcSPX3ubicLo3y", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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 &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\talways no (Protected & Trash) \n}\n\n// the protected 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "GLDxn2kzT4ZMRitND", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 21:55:49"} {"_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": "FaKftHpsxqwhdEL8w", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t all f : File | f in Protected since 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\n}", "derivationOf": "6w4TuFnTy3c7yXLep", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:51:06"} {"_id": "MXdSNPLWtJ6RjAN9z", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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\tonce 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\tall f: File | f not in Trash until 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": "BkvemgeCjLk8XcY8m", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:05:18"} {"_id": "4D7oeP84Q5sjAGyB7", "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 some f: File | always no f in File since eventually 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 |(always f in Trash) since 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": "EpQKuX2nbhxW68iPS", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 12:00:50"} {"_id": "LnmvDJpEsJ6P9Yx8x", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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": "nBoyFdsm8R7shBJw8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 17:16:08"} {"_id": "ZHWD8JWxMtHvJuLd5", "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 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\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": "bWoHCvdX8B3bE99RH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:17:38"} {"_id": "Yb775P2uDGfRqicYf", "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\tall f : File | f in Trash => always f in Trash\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": "XvrK4N7XnGDPS9np5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:15:49"} {"_id": "C59cNxvDtaMW9ZmDe", "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 + 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 no Trash until 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": "y7gGcThTeEGc7zRdr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:45:42"} {"_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": "M9ELatYrJKSecCBGa", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | eventually always 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": "Pjx6PmPYTec37Krrq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:53:00"} {"_id": "7brmwqpA8SQvTmF2o", "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 \t\n \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 | eventually f 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\n\t\n \t\n\t\n \talways eventually link.File in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \talways all f: Protected | after 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 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}", "derivationOf": "FkAL3CE7GPLMAkwpe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:06:39"} {"_id": "X6a4Q7Gsmwrw33Cqo", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File - Protected) not in Protected 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": "JfLwHHpus4HngvudT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:46:37"} {"_id": "ancEyCaXYKohHuQGP", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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 & Protected) | after no(f & 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 & 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 & 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 & Trash) | 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": "2YFnxixsDNBnhYhuD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:59:50"} {"_id": "eShLGDAJ9HzHTCLm8", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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 & Protected) | after no(f & 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 & 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 & Trash) | after (f not in File))\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tno (Trash & 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": "ancEyCaXYKohHuQGP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 14:00:16"} {"_id": "tGXGjKuAeQJiwctak", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-Protected implies after f in Protected\n \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "AwHcAA8QFv9MqQ27e", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:39:29"} {"_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": "Pn9GvdbcYddrJWJRG", "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 before 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": "GuxsvSQLqL6z5TjBY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:38:33"} {"_id": "auTbqvN5RFN86SLiL", "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\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": "uT7FdGFMEZHhJrZEm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:14:35"} {"_id": "yEykQ6y85ELZbTKQM", "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\thistorically no File implies 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": "BYSbFwPhbEwNGk248", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:39:29"} {"_id": "DrFLaaABkgDK67MaY", "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 before(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": 1, "time": "2020-11-19 11:30:54"} {"_id": "SihpQwt6qQiWToqvC", "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 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 (File & 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\tall f : File-Trash | eventually f in 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 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\tall 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\tall f : File | eventually f in 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": "YJZERXjfvstHdY26Y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:38:20"} {"_id": "miYv24Ffcy7HQ4Bzu", "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\n \tsome 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 \teventually some File 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": "eQCDRoFTv5jMzEvvX", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:41:47"} {"_id": "5zeuTRxhYtjpWkt7p", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\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\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 since f not in Trash\n}\n\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 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\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": "6Ysb3BnZyY92zzsrc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 14:45:36"} {"_id": "5bPBiiAbs9NaSNp3u", "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\n \tsome 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 \tsome f: File | eventually always f in Trash\n\n}\n\n\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\talways File in Trash since 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": "BNMArEkk7dKxtZpkv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:58:02"} {"_id": "TqWak7DGwvwk942Rw", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 all f: File | always (no f in Protected & no f in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always (File' = File - f since f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5PXtMfN2pdvz4hTr9", "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-11-26 23:29:13"} {"_id": "PsRqqbcdyvWKppPCe", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 (File & 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": "4jS3g9tWz2xJMF7Yp", "msg": "This expression failed to be typechecked line 67, column 2, filename=/tmp/alloy_heredoc15140647438891270859.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:32:12"} {"_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": "kb3LbAcw27hevoHAv", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link in Trash\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 after 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 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": "CKoJ9YFv5T9ZakwP8", "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": "2021-1-8 03:23:12"} {"_id": "kNEM75tJZxyJSo3ZY", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\tall 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": "5bo2ZvZtM2wptiZXX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:23:01"} {"_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": "xZAdCkaBxhJgZ5inM", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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 (all f:File | f in Protected implies 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\teventually (some f:File | f always 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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "vS68F2TBdL5y2XwKu", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-3 09:46:08"} {"_id": "9QthAyGb2aaZAsci6", "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 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 \talways all f: Trash | once f in Trash implies 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 l: File.link | l 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\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\tonce 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": "Jj5Yec2octjdJWJgR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:54:11"} {"_id": "bkAysrMs68YnaPwN2", "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 + 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\talways no Trash & Protected\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\tall 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\tall f : Protected | after not in Protected since f 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": "QFmr6uDekNKcwHXck", "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-11-28 00:10:37"} {"_id": "vTuToM7QEade5RqgX", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\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\t eventually (some 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\tall f:File | f in Trash since f not in Trash\n}\n\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 after (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 \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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Pg7WdHWprLzhMd2vm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:43:07"} {"_id": "ufphvJ8StG97M4CCg", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at no time 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\teventually (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": "zSorKbdpiWyX36rp5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:17:22"} {"_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": "rCpa7gs5mJh9Kbej4", "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 eventually some (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": "TsoZ773qHLYdswAw7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 17:09:36"} {"_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": "DXjus7domGFWvrE5B", "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 no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n some f : File | no Trash | no Protected\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": "x2jHDQzWR9D5xG2h8", "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-11-18 20:58:45"} {"_id": "ySHGhXpZbSEjGvLZW", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n\tno File implies after always some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\n \teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \t\n \t\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\talways all p:Protected | p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Ln33T5jBWwJXAx5EN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:42:25"} {"_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": "aB7ZputLP4JDkcTWe", "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\t\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\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\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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 & Protected) | after no(f & 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 & 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 & 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": "joQtZrntYDXMS9LRh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:56:12"} {"_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": "AvwpGuaaLrhzqaPP8", "cmd_c": true, "cmd_i": 8, "cmd_n": "prop9Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some f: File | 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "Y9Qxupn6PiuHFLJJe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:44:15"} {"_id": "WPwyDtGEnZhtojbhv", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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": "tCeHLxuR6HPYzr9Wb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:33:02"} {"_id": "NdiF6MjyLozJRp8Zm", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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": "zF28rZhit5fJLS4FB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:51:39"} {"_id": "ko6zp4jStE8Rs3mWb", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n all f: File | eventually f in 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": "53CKKtJRb2DNZT6mh", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 22:40:09"} {"_id": "i5puBzSTrqWjFm246", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at 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\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": "okmJgpMhxcoA74H8w", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 19:46:23"} {"_id": "xzFj3P7GS4f22ipDa", "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 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 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: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:File | f in Protected implies 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": "JajsKoqy5uAvsvzLS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:30:12"} {"_id": "tY828XP9MGeYBa4X7", "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 (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 : 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 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 : 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 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 Protected since f not in Trash)\n}", "derivationOf": "Qh8SBmpA9u5N2v7H6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:37:23"} {"_id": "dvhCng5AdxC8MqjFy", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\n\t \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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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\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": "kNxvvS23DPkgQ6BSu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:28:06"} {"_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": "Qe5F7zWDPYxKB5Miq", "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\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\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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "CXhE2zcLpbBTQ69rd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-29 21:48:34"} {"_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": "wf6tLnFsHiFrcs3rA", "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 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 File & 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\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 Trash & Protected\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 + Trash | 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\t\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "mtJfGYicfca7koBEr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:28:41"} {"_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": "mviz5EWwQKt3DbTSX", "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 \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 : File : f in Trash => always f in Trash\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": "irufJAKZmkAui6Dve", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-2 20:13:28"} {"_id": "SGeF9uchPnGPD4PE2", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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\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": "T3YEFmoK9wcu9ZT6C", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 15:11:41"} {"_id": "jDwxr9arywDy6Lbb3", "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 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\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\tall f : File | eventually f not in 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": "H8EDZHs2SeJcLTcmg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 22:37:27"} {"_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": "ruzjzWw6v5BoWLbok", "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 | eventually no f&File)\t\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 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 p:Protected | no p&Trash)\n}\n\n// the protected 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 | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "jW3xYHBBX8nMD6wzv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:29:39"} {"_id": "XRFSSErFvZnvFPqax", "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\tno File\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | once f in Trash implies always triggered f' 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": "GMs89Rp8hEGGE7e9S", "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-11-26 22:57:13"} {"_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": "z62mECF5QicsLJtq6", "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\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\tall t : Trash | t in Trash since 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": "p69fAMS5oQTRjag7a", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:44:24"} {"_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": "L5BQjBAc4e7QGjjhk", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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 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": "fbZpJtRYmcT3YF3xx", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-8 03:26:41"} {"_id": "PcZzh35TDYtucLKWw", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n 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": "fLmehh7Hdf4sXvBmf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:30:44"} {"_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": "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": "FJjYd4x3YDvHyw3tQ", "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 = Trash' \n}\n\n// some file will be protected\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 (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 : 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 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 : 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 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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-3 09:35:26"} {"_id": "wSrkMsnzEshXcRMtJ", "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": "6QtDHDof7WXKYH6tD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:41:15"} {"_id": "uBPkNzgmXedYek9LA", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File |some (f &Trash) since 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": "6KtSyns4JHmX92mht", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:01:40"} {"_id": "mZQQxN9AQEY6pAzBB", "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 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 \talways all f: Trash | once f in Trash implies 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\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// 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 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\talways all p: Protected | eventually p in Trash implies p not in Protected\n\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\n}", "derivationOf": "JBJsKt5TZzt9ZSANj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:16:27"} {"_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": "taGDgPsQvSGxrgzy9", "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\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\talways no Protected & Trash \n}\n\n// the protected 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 \teventually (some f : File - Trash | 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\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": "Da6xrKzokJHydjx7h", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:24:33"} {"_id": "XbjEH9SL6Q93W6zNJ", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 | eventually (f not in Trash implies 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\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": "63MbKHt59DhniMdKb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:44:05"} {"_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": "bPiQfXRAn4MdcrSZv", "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 \t\n \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 \tsome f: File | f not in Trash implies after f in Trash\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\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": "d2D9YcMa9W3NHmjPM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:59:43"} {"_id": "pe3erXMdqdbnM6iSb", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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\t\n \teventually some f:File | f in Trash releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "gwdcwa3mQW3WHAxRK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 04:10:14"} {"_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": "j7j47iYPN8j4zdN9M", "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 | f not in Trash and 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": "jQdxXrYh4cS4NW2cn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 19:52:59"} {"_id": "H8EDZHs2SeJcLTcmg", "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 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\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\tall f : File | some f not in 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": "3jChJg9gBidjQ47wu", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-2 22:37:20"} {"_id": "s9yX29jhHJgTFG5mZ", "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 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: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": "8LHTWNSoRomG28ixp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:16:16"} {"_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": "wZqzMSQ8pAajPgsxZ", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 after Protected always 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": "n7jDqYmcFJAMJqca4", "msg": "This expression failed to be typechecked line 68, column 2, filename=/tmp/alloy_heredoc13508335694250510250.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 22:28:37"} {"_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": "L5JK9yXNd8WczhRmB", "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 Files and after some Files\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": "AaEd5LLLGoCmkXFbH", "msg": "The name \"Files\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-19 19:50:27"} {"_id": "PuNCLvs84SirdiNF2", "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 \t\n \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 \tsome f: File | after 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": "Hqqf6ozJdbYnYjLzn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:50:16"} {"_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": "ZnvbN4SERi4H2dFdW", "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 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 and some 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": "SndQ3rQNseNEpxjxN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 22:29:46"} {"_id": "E7yvoADkKnNrPayKW", "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 since ( historically 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": "Pug3JE773wqWmRe9h", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:38:08"} {"_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": "QWBWKaYzeXYAgSBQy", "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 some f: File | eventually no f in Trash and always no f 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) since 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": "8Xb4S33KenpGcH6k8", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:59:32"} {"_id": "BkH6zb7Qu7yNmcSGj", "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}\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\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\tall p: Protected |once p implies always 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Jw9QakZYEJJPws543", "msg": "This expression failed to be typechecked line 59, column 20, filename=/tmp/alloy_heredoc11868793592559716660.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 12:19:06"} {"_id": "Tmi7BqSqaymB4oMku", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n\tno File releases some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5Jwv8ZawWMnq9nBYm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:35:07"} {"_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": "hYWRc3vpCmEaM7Cbv", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all t:Trash | t in Trash releases t not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "27D2mhgLs7HHgusGT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:15:24"} {"_id": "24BcSkpk4B9o5YosZ", "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 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 File & Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways all p : File | p in Trash since p in Trash\n}\n\n// some file will be 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 Trash & Protected\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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "4t9dJ4LsuTWnGPbKw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:26:31"} {"_id": "BkvFeBCbcd7sWYrYT", "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 + 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\talways some File\n}\n\n// some file will 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\talways (some Trash implies 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": "ff3BXDAR4HWTZkrv8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:58:20"} {"_id": "obFKMCYq6LrmmnXNm", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "f4kPtat9sctAFTpHb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:16:08"} {"_id": "XtDD43tTQYBJHbsgG", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (some Trash implies (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\talways all l : link | eventually (File.l in Trash)\n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "JxEPFuukzdaSr3Yp7", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 13:35:44"} {"_id": "d5ex9kuAJwS4evdR2", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "Pcz7HdXxLASBgfTAM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:46:34"} {"_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": "JDhgYD2Xczh5PwFYc", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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\tall f : (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": "ubKn6psz2bkdpEr2r", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:51:03"} {"_id": "QngpeR54y7oTX9QZS", "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": "sj9ssDoQmJTDjizBS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:08:57"} {"_id": "DZ3bwup8afthZbfs4", "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 all f:File | f in 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 f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\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 releases 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": "oZyiRx7Jrt8DPN366", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-11 02:03:08"} {"_id": "6zMMQHNaNq79QEhYK", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n 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": "C8fwykgcniKQBrybn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:41:55"} {"_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": "GPETbJRY9TptBRqEu", "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 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 \talways all f: Trash | once f in Trash implies 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\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// 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 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\tall p: File | always (p in Protected and eventually p in Trash) implies 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 all f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "RJZDZQmEasqY7XccL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:18:19"} {"_id": "Xxd9Q88DctG9hRqGL", "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 \t\n \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 \tsome f: File | f not in Trash implies after f in Trash\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": "YackNJje8N55ZNTWy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:54:07"} {"_id": "woLjamYpFghaPgRbt", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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": "iZi9niCoirTSutdiG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:51:26"} {"_id": "3fZMYFZyTNK4CZmK2", "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 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\talways no Trash & Protected\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\tall 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\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\t\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 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": "fzur3xLxXodspgZfh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-28 00:21:08"} {"_id": "mFdgxWCPvWXqxmB8j", "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\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 (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 : 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 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 : 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 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": "dvP8DoqHRp5nwztku", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:18"} {"_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": "AZt3xv3xeywYwNu7M", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n 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 always all f:File | (f in Protected & 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 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": "SNCyCcxDyrKPcxqRz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:22:11"} {"_id": "JTkPRnHHx2GuyifNX", "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 | f not 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 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 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nYoRKEP5M2MHRs8fn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:47:42"} {"_id": "gZxqDLdyun8gX29Dd", "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 always( 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 | 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": "cyYZW9fKpN6anvLkF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 18:03:44"} {"_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": "fFHExyBTQNFGpeRdQ", "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}\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\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\tall f: File | always (f not in Trash since f in Protected)\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ggdqBCRm545xXJGMa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:31: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": "wqLL4YBjvryKLSgtp", "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 (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": "vDzYvGzyYhXgNBhFW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:22:32"} {"_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": "p2vQ7q66miaqtXcQg", "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}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f: eventually 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": "YmFDWFQZNBCJv8B8X", "msg": "This expression failed to be typechecked line 45, column 9, filename=/tmp/alloy_heredoc11378438428345021195.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 12:11:45"} {"_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": "2KKT7qevntzf2DavJ", "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 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": "iPJReJgRA3L7XHcN3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-4 19:12:56"} {"_id": "WTvRdh7AP7odEBTPT", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (some Trash implies (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\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 (some (File - Protected) implies ((File - Protected) 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\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 & Trash | 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 (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 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}", "derivationOf": "oD8ej9zDwmSXnmoT5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:40:48"} {"_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": "9SPgt4rLz8QBtKnt7", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n \n always all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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": "hNz65GsMJtDRdYMGo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:32:09"} {"_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": "JjwPXD86vztdPJJrw", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (eventually f in Trash) implies after 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": "7oqv8wwZvq5QeNzym", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:04:53"} {"_id": "HP6raJ84gG8MvNyc7", "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 (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 : 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 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 : 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 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 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": "XF2zePDPRJNwoxSoB", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:32:52"} {"_id": "a3jkTdZiBnosf2wRA", "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\tonce(no 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 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\t always (all f:Trash | always f 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": "Csn6mvXKNt3saq4yS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:53:36"} {"_id": "vS4xZjyu7x4QKBjff", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 always 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": "D4DBQ7aurcxmcufsb", "msg": "This expression failed to be typechecked line 66, column 10, filename=/tmp/alloy_heredoc17730737071381456248.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 23:17:45"} {"_id": "6KtSyns4JHmX92mht", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File |some (f &Trash) since 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": "nP2ArmfMeLvNNr3D2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:00:44"} {"_id": "2osaro2MwNxdR5m97", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | once f in Trash releases f' 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": "YkkjyLePqL3ioAG6C", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:59:38"} {"_id": "m7LNfPxm53LKE4EGS", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome 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": "5SscT9prQa65j4HjX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:38:28"} {"_id": "v5YDXKcZjpiGWmk6t", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n all f: File | eventually some Trash and once 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": "6zMMQHNaNq79QEhYK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:42:25"} {"_id": "dppwcH7pQCZAbdZKs", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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&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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "JDq85JQySFYLScu3m", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:28:10"} {"_id": "H7YN2cKdzeiiK5oie", "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 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": "M5X4FwvBhJiZv5Dam", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:10:48"} {"_id": "CZdvJjoAKf7bMskv8", "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 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\t \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\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\tall f : File | eventually f in Trash => always (eventually 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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "CGeMRa45iKdhvi9ii", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 23:47:23"} {"_id": "n3vECZX3FoYB79eJC", "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}\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": "4ghLXjYNdvQbZjWyK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:48:43"} {"_id": "GMs89Rp8hEGGE7e9S", "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\tno File\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | once f in Trash implies always triggered 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": "KF2im5k3w6oeeYX2j", "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-11-26 22:56:51"} {"_id": "5iRy3JZw8Z5Zfq8c4", "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 implies 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": "2pib5bQoZ78cXRMqE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:32:07"} {"_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": "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": "zYSDeFzXqn7eFD5Kq", "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 (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 : 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 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 : 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 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": "ThPZamMcDEt7rbNYm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:48"} {"_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": "koybTpcJMdSKcL3JD", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "mEfdE3ue82fTY5bSW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:07:46"} {"_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": "BHEafam9km9hc3HbM", "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 no Trash\n \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": "2020-12-9 03:10:12"} {"_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": "oz2dHtu2jaF7qEqCf", "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}\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 all f : File | eventually always 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": "KHGKqZrzfgouQaBFT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:45:28"} {"_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": "98fEptZL8Gb6SrpBG", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always 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": "c57tEijYfAmsHeSKX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:49:36"} {"_id": "PLdy78kQikupH3nHi", "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 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 \talways all f: Trash | once f in Trash implies 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\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 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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "ms9DjFcngeYHpJ9io", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:37:42"} {"_id": "jMcCBhdgAKyuMXQ77", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after 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}", "derivationOf": "kFoqCwiAMhuGQkZCa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:00:17"} {"_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": "ZJ4LnQF2pS3wLYE6B", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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 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 (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 | 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 always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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&Protected | 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: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 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": "d3PCNeheCQ37uMCdj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 01:06:11"} {"_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": "rC6kqc9bG3JC6Y8fE", "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 + 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 | eventually 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 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 always 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 always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "isQ7m9hMpQTkitfQC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:08:02"} {"_id": "J7NJSQDS9FFkRrgKH", "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 and some f : 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": "oHvtidoxCNmRqZphv", "msg": "There are 3 possible tokens that can appear here:\n, { |", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:01:49"} {"_id": "wEKH2D9xP6oZQqgbw", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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 (some Protected) until (Protected 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": "7T5HwvELfXM82C2FC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:29:29"} {"_id": "XsPfgcRPYe73awFEr", "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 + 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\talways some File\n}\n\n// some file will 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": "TP9YcMQGyJJH52BaH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:52:46"} {"_id": "3s3x3jKuCnsHEi9MF", "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\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": "kgz7G3QodG2opCTEx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-29 21:31:14"} {"_id": "n7jDqYmcFJAMJqca4", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 always Protected once 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": "WJfZbXHE7N2vQ5WnK", "msg": "This expression failed to be typechecked line 68, column 2, filename=/tmp/alloy_heredoc16562476280047967347.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 22:28:24"} {"_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": "atydrMSm2bBGAGMmf", "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 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 \talways all f: Trash | once f in 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}\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": "z4iwNCWNJ4aSRCFkD", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 21:27:28"} {"_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": "pGGhLv2w6bNgXSmnt", "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\n// initially there are no files, but some are immediately created\npred prop2 {\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": "LNvFLdpg48m5Jy8BN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 02:48:50"} {"_id": "6iXdf9QFAHt9rderz", "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 historically (no Trash and no Protected)\n\t\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 eventually (some 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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no (Protected & Trash) \n}\n\n// the protected 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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\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\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 no (f & Protected) )\n}", "derivationOf": "ZehDrgtuxgidriXfC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:37:39"} {"_id": "akuDmaWy6gL5efNZf", "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}\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": "wFcqgtEihfvtbZw9d", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:46:47"} {"_id": "Aa3SpbFrhNjWKYECh", "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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n always some f : Trash | eventually 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 | eventually f in Trash implies always f 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 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": "YfzcSEjnrbtzHcLJ6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:37:02"} {"_id": "JyXHnCMr6ZrupzsTv", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always f in Trash implies always f' not in File and f' not in Trash and f' not in Protected\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "H6f5Zsn3NHW9gKmF9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:02:51"} {"_id": "AWPFf98tmKpy9FZ4L", "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}\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 since 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": "YwzhpAvPTapMkKXjC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:51:14"} {"_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": "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": "EH6rHwDNHFoKHgXj6", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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": "MWbWMCsrhBLhvMasN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:59:34"} {"_id": "TrcaDcuFH8bPwdicu", "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\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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-12 01:36:26"} {"_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": "eNqTTPwin8G83WSCb", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\n \talways all f : Trash | 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": "rb32sG28FHpMqrjsH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:37:27"} {"_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": "RxoK4Gy3iatxb2Jts", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "kcK8t4sDD6yELrzNe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:46:12"} {"_id": "XKoF88b4GoSQYXn3k", "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// initially there are no files, but some are immediately created\npred prop2 {\n 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": "6AAsQ9xqdsHyiHTjm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:46:15"} {"_id": "kp8isditwY4wf6oA6", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 : 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": "8TjhjB5EjnL5xmAJz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:31:22"} {"_id": "6daaH2wbEmKCrWtMp", "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 all f : File | f in Trash => always f in 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\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\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": "nkjhA6HR9GgKFqLfc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:32:48"} {"_id": "9EQZEGwTtLhFdYt35", "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 \t\n \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\t\n \t\n \teventually 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\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after 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}", "derivationOf": "uXH5RNSFNSyvmebjM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:02:42"} {"_id": "YkFpRwf5EYJ6xHw9v", "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 some f: File | eventually no f 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) since 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": "y9jmWgNFXN2qR2vzR", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:56:39"} {"_id": "APTTJKWqkWPG3ZmGQ", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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": "B6AwzZzo9ZJcAJ8z3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:15:55"} {"_id": "sSKR4ojRxWzPTicNc", "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 (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 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": "LQXWRZ9htAuDjc85t", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:20:51"} {"_id": "ztY9PnxwmPPkriLbC", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "MuScyhbX9yS65APnH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:51:33"} {"_id": "SNq8qgcimnjLzfkEk", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 (Protected & Trash) implies ((Protected & Trash) 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\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "n2xsfTyvSSmecBZsQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:37:10"} {"_id": "CArxkp6BaMiTaxmSX", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 all f: File | always (no f in Protected or f in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always (File' = File - f since f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "MD2A9PRyvE79PfsxM", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 23:28:25"} {"_id": "mzhqsQ7oMYwNK9mMk", "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\tonce (no 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 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\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\t\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)\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": "9vDsw29FccoAnrT5j", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 23:00:57"} {"_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": "8cTRidQA6iNbfryrb", "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 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\talways no Trash & Protected\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\tall 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\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": "s68BAYjaKmyD94pnB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-28 00:13:41"} {"_id": "2eMDJRThfpRR9K3Md", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\t (some f:File&Trash | 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 since f not in Trash\n}\n\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 after (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 | 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\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": "qDFjsTwqQakEQDoSa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:39:22"} {"_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": "Y7T9aBRoFud27um3o", "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}\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\n \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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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\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": "jTRafMwmjmYZ3ds9m", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23: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": "EkaLQCSo8DyREZ5j8", "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 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\talways no Trash & Protected\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\tall 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": "pDvZqbQqjhHzowHeN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:05:38"} {"_id": "mxZLihr3ZFJygYKiv", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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.link 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "yxSnhACmoAxweWHS7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:26:11"} {"_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": "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": "ToheFspN6mz4pNtGL", "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\talways (some f:Trash-Protected | eventually no Trash & f)\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\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 | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "3wPPHyj3R6WSGmMC4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:08:06"} {"_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": "4gtogxXhowxPM8hAw", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at no time 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": "oeg82QFrFMNmEwkr2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 19:42:24"} {"_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": "yEfSQvjzZunSF2Woe", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\talways all t: Trash | once t in Protected and t not in Protected\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}", "derivationOf": "BSFHEeYDo4WDHfhEz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:54:11"} {"_id": "daBC7mMgZ6Wqa6Yki", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\teventually all f: Protected | once 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": "AxHPNXdpYyiB7BaYQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:35:28"} {"_id": "G2chsMEbeQ9tsbinG", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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\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 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:File | 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\tall 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": "sSFRarTxiRHxzKdiG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 14:01:41"} {"_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": "2YFnxixsDNBnhYhuD", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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 & Protected) | after no(f & 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 & 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 & 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 & Trash) | always ( 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": "MYPrEMe6Wu4unsW9v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:59:33"} {"_id": "ibt6WP5ZxQ7wg4ugs", "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 (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 : 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 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 : 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 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 Protected since f in Trash)\n}", "derivationOf": "JM35Wg3hFmqPGuQQw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:36:53"} {"_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": "75KdcDyJT34RjcGCM", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\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 & Protected | 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 => 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 | always p not in Protected => 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": "7vddwrKdjS4yvo4JN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:46:06"} {"_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": "MGQajoopaa2fnHhcD", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after 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 | always p not in Protected implies before 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": "XPJNBRrpryRCDnbhD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:18:13"} {"_id": "2JJarhN6BPByRievH", "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 \t\n \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 | eventually f 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\n\t\n \t\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 p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \talways all f: Protected | after 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 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}", "derivationOf": "7brmwqpA8SQvTmF2o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 01:06: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": "WNuJjPCdzQzErDvAX", "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\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 | no p in 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": "Sm8DQ3XA9xvhNspiZ", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-12 23:58:01"} {"_id": "6Cg9xeYimBMMSDMG2", "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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t (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": "pKxdDmySd7wDMxuo9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:33:43"} {"_id": "NRmgpkE8mNL6miHEx", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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 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 (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 | 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 always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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": "HxSL2v8YsSSN9wvo8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 01:02:32"} {"_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": "TsPre9wDtADRb3a2j", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 some f : File | eventually ( 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 some f : File | f in 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": "PhLFC3T3voJ8SuXhu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:23:16"} {"_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": "Y96Rq73iCA7ZGtdr7", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after 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": "MmxwXJbpoKps8wWMi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 20:01:13"} {"_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": "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": "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": "Y7rwZ2tdBysHARz9f", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\tall 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:File | f in Protected implies 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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "B4DajJocJnXADausM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:13:00"} {"_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": "4ghLXjYNdvQbZjWyK", "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}\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 since 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": "FgqAcoZFBBBXz6iso", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:47:46"} {"_id": "ERapfoBnsQe5ohxr6", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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 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 (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 | 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 always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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&Protected | 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: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": "zGAWPgcFwJZCYiYdE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 01:04:40"} {"_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": "KfGQnd7xqaPFg8Ysg", "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\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\tall t : File | t in Trash since 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": "QZTemNfbh6HipBGCK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:44:10"} {"_id": "HKbP9Gub23x8F2P3e", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 always t: Trash | once t not in 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": "m8J5DeiaSMGgGMbHv", "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-11-23 23:45:51"} {"_id": "hJ58TWfrQFLTQeEmv", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "YMTLonKTa98jzYdwe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:53:47"} {"_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": "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": "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": "iM3jcy9c6bSPDPMPs", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "AhK8ajQRkgr844eq7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:30:36"} {"_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": "F7Zrvf6sTDPRh3zQL", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "2cjojBix5RgQ4JNDX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:08:01"} {"_id": "iHneC5xkgJEbb3WYY", "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 : File | f in Trash implies 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\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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dMMsWicZWpgdHPFqK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:47:24"} {"_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": "8Kdb6vDXNEXWAk4NS", "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 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 : File | f in Trash implies 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\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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "zkruSQHcArMx6RdQW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:46:51"} {"_id": "Lt3BYRgeZeq7icPp9", "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 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\talways no Trash & Protected\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\tall 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\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\t\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}", "derivationOf": "Af78pwPzAGiMmuD9N", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:19:40"} {"_id": "yG9ekY9CGnvCDTkJP", "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 some f: File | eventually (always no f in Trash implies always no f 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) since 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": "yKLtQoFBmwdJYRfWR", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:58:55"} {"_id": "nwoFktqXoTDWZtLpc", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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:File&Protected | always (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": "Kdx5Fqxs7E3jNSop9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:46:35"} {"_id": "q2tzSktDh45qY7Mkg", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at 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\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 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": "i5puBzSTrqWjFm246", "msg": "The name \"file\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 19:47:01"} {"_id": "w296zYXbdnuQMzsjr", "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": "akAJZsP4GDKBmRybJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:19:43"} {"_id": "37qYjWqQeJSgfJ7L7", "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 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\tsome f : Trash | eventually f not 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\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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "E3JDhmoNQjSeuunz9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:20:51"} {"_id": "ugj6zgetTTsN5hNX5", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 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:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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": "7RHmrouNQGBbuCe2z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 17:18:19"} {"_id": "3jChJg9gBidjQ47wu", "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 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\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\tall f : File | f not in 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": "bprAupRe75tWeauBB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 22:37:06"} {"_id": "rWXs49MHeQtHdW2Jj", "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 Protected\n \tno Trash\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\tall f:File | always 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": "WTbuEEQKuadPtCMG6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:36:17"} {"_id": "jSgnHGYpp8ATwQyyX", "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 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 \talways all f: Trash | once f in Trash implies 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\talways eventually File.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\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\tonce 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": "azMtAhEjio4Nx8JrJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:57:29"} {"_id": "8JtLSPGE3Rtp3sENY", "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}\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\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\tall f: File | always(f in Protected implies 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": "ZkKNhXF4agkJ7rhaz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:23:59"} {"_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": "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": "Y8vrYcxp73Jq3ymu2", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\tafter (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}", "derivationOf": "L9vTdmif2pzw2S5YF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 23:03:41"} {"_id": "Br2ekJhjmzJd9GdXw", "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( before all f:File | f in 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": "25NYYDNszY6rMrnrt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-11 01:47:27"} {"_id": "Jb3TRNHXrTdQ9HNeJ", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t (some 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "j289GoR7efCgSeLuC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:54:21"} {"_id": "cECFq8oGwNJWDZLvc", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\tall l : link | eventually 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": "bcN52j3kBpAWeh6i8", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 12:09:09"} {"_id": "BWnFiot9K33pweF9T", "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\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\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qigDthW4NF5DAureh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-12 23:46:44"} {"_id": "rMbrEx6xhRhGhthFB", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {-\n always (all f:File | eventually f in Trash implies always some (f &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": "5nYh8Y9srk2RgaFFz", "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-11-24 18:59:02"} {"_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": "3f4EvXfrFzLYszx5G", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n \talways (some File.link implies eventually File.link in Trash)\t\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": "Btn7qExy5DK3oWNYq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:16:50"} {"_id": "MCZLGWwEo7LE47ThW", "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 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 \talways all f: Trash | once f in Trash implies 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 File.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\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\tonce 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": "GnMx2ZPDRbTJikPT5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:00:29"} {"_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": "pZJed6tqKEFPzbZ6v", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 ((some Protected') implies (historically Protected 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": "rwrGXzkvYiAWb8iNW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:47:47"} {"_id": "dmq7uExhAY4hMSmd2", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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\talways (all f:File | f in 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": "3AEmKfedXioG4Sx5W", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 20:10:24"} {"_id": "iuNYYpGnaxdP8yBqN", "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\teventually (all t: File | File' = File - 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}", "derivationOf": "zFfR6azJJ3h5Kbwpj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-12 22:07:21"} {"_id": "jJ2hLJBt3B6WExoap", "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 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 \talways all f: Trash | once f in Trash implies 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 File.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\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\tonce 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": "9QthAyGb2aaZAsci6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:54:25"} {"_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": "kJDDHFbWk7s8vyQCQ", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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": "S7BnGbbN4NF67Msb4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 22:16:38"} {"_id": "qFDnxv5TRETEFS4sz", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all f: File | f in Trash or 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": "d9q6hhvCxMt86S6ig", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:39:47"} {"_id": "fcwefwxHarNvmjzun", "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 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 File & 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\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 Trash & Protected\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 + Trash | 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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "8Gt6kcQLo2E2vzMoG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:29:12"} {"_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": "KKywAWrxyBsw8WXGx", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\t 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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "2QAeAhtQBuhg4yK9D", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 22:14:31"} {"_id": "beMeASvDLrfTTm3Gh", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\talways( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t(all f:File | always(after 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "QNT3b3pFp5hu7S7JH", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:29:14"} {"_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": "fTiqPWvNCo65MRir8", "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\t\n \talways all p: Protected | after 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": "8t3gWWqqg88y926dr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:00:19"} {"_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": "s7xKcxTMZk2Cv6zhf", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\tall f:File | historically (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": "RRTEB5roB2mhYiqWk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:51:45"} {"_id": "e3tMaocwsNA9KC5c4", "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 Trash\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 and f not in Protected)\n}\n\n// some file will be protected\npred prop7 {\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "HTiDkhsqAjdtMxmfo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 16:20:56"} {"_id": "NNgxwnbnvSt37GKyJ", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & 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) triggered (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": "kGqHn4hm76t8kQrXZ", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:50:16"} {"_id": "aDd9mj4oEpZ5nx4hL", "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\tonce (no 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 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\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\t\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\tall f:File | 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "v294wYGMsNjzjQrvQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:53:56"} {"_id": "dCo4JNfAKNvy84ZA7", "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 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 \talways all f: Trash | once f in Trash implies 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 always all l: File.link | always (eventually l 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\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\tonce 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": "asYKm4j5tFWvJmbNj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:49:23"} {"_id": "JajsKoqy5uAvsvzLS", "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 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 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: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:File | f in Protected implies 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)| always 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": "gGkaM4yyQxtmNrJu5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:30:09"} {"_id": "GemPoBJKtzriEv4T5", "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\n}\n\n// some file will be 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\t\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n \t\n\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\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "R5ePyZKg48xt7vYCE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 15:49:08"} {"_id": "dEBFNY7WTZHQZQSjL", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n eventually ( all f1,f2 : File | f1->f2 in link implies f2 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": "ektH8aFn8CZwaCPck", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:47:16"} {"_id": "DScFBp7mH4H4Qm92o", "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 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 \talways all f: Trash | once f in Trash implies 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\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 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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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\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 f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "mnWfcpacf8vjZhrJN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:26:09"} {"_id": "JfkmRrAL3DcSHDwhS", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually 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\talways File in Trash since 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": "4K2njbjy5s5J28jcp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:54:00"} {"_id": "T3GdsSHr7nXiAzWn6", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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": "5uRScPsHaHseztcGb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:40:14"} {"_id": "AhK8ajQRkgr844eq7", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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 in Protected)\n}", "derivationOf": "tBaAN3qFWkHWzL2GZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:30:30"} {"_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": "qYykZaWvXkMhELYjL", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\t\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\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}", "derivationOf": "9eXyhZJu7SYNfbXSA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:59:29"} {"_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": "jmTQFvTJwHnnaQMJ6", "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\tonce (no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File until 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": "oKkRWcBB8Cnc7AH8q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:46: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": "Req3FTd5YnuZvGgod", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t 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\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ENYoh4qK6tfAKNqzS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:38:24"} {"_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": "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": "XueZk3SfgbvHqMHrm", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 all f: File | eventually after f in Protected implies always f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always (File' = File - f since f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "e3Wr6jPR76SzhmAbv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:26:58"} {"_id": "zhvAuXLy8itAshgEH", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | 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\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 | after 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 \t\n}", "derivationOf": "cm9whSckEhCttFiNB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:28:44"} {"_id": "qdFgY9Jd7TJphGybs", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected implies 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": "BQf6Tsvy4yFR6QpAv", "msg": "This expression failed to be typechecked line 70, column 3, filename=/tmp/alloy_heredoc340067900823865796.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-16 18:08:30"} {"_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": "evHa8WxafTR2NEHRW", "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 File' 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\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 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": "v93scGfhJyr7f3XaQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 16:42:38"} {"_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": "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": "iddssJWXoRPkeDBPX", "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\n \tsome 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 \tsome f: File | eventually always f in Trash since f not in Protected\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash since 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": "qvqhWTeAMposBM75p", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:01:25"} {"_id": "rtmkdxbxmNmLBzFz5", "cmd_c": true, "cmd_i": 19, "cmd_n": "prop20Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "SWLmK63wSB5Ea5Qbn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:39:33"} {"_id": "NcFAdMN3996xXjAma", "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\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\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\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": "Qe5F7zWDPYxKB5Miq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:48:53"} {"_id": "T8k9W3JZH5TXvPk2P", "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 + 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 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": "qtX4jTR3rDiqaE3pw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:21:10"} {"_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": "ptRaCWngmmrD33p8k", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(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": "S3KNbWHELhyCeuEY3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:09:07"} {"_id": "vqc76iRMmM56qrh3o", "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 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 \talways all f: Trash | once f in Trash implies 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\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 all f: File | always f in Protected since 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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\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 f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "4woBFcKXZrqCSvmaB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:28:30"} {"_id": "9D2oWmuvjEuWHvZzP", "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 + 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 | eventually 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 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 always no Protected & Trash funciona, nao devia\n always all p: Protected | always p not in Trash devia funcionar\n}\n \n the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n \n every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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\u00e3o percebo\n eventually all f : File | f not in Trash releases f in Trash\n}\n \n if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in Trash nao precisa do always antes?\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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "peG2yeaL9HSbQkYB3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:48:50"} {"_id": "nGCTfmosghXb2fBAb", "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\tall f:File | f not in Trash and f not in 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\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xYe7qZoosLQWwQQmK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-14 00:17:14"} {"_id": "QjMkJsFLqsmaZti3N", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\talways (all t:Trash | after 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\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": "AW8KKhKLquhjo6pYF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 13:11:54"} {"_id": "RrTtrkF9nYHAjSerq", "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 until 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": "coycEsACDE56yYYGv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 17:55:03"} {"_id": "R5gcehEaenFnQiHKS", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-Protected implies f'=Protected\n \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "yPRRpT3ZxsjKfy7TL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:39:16"} {"_id": "53d4zhqKB7Ge7TW5g", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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 : File | eventually f in Trash\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "WTvRdh7AP7odEBTPT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:42:07"} {"_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": "77hSRQzai6sZRd4kf", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - 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 : 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 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": "sYev2BHRCjhjmALGj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:02:01"} {"_id": "a82PBrZ2h4hK5JwZS", "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 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 \talways all f: Trash | once f in Trash implies 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 \talways all f: File | eventually f.link 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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FSETDJTdey64tswTo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:14:13"} {"_id": "4gGDFQEpLY4hogd6A", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some 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": "Emtyi2nisqui7NZBt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:44:28"} {"_id": "uCW337MR5oTop4CN6", "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\tbefore no Trash + 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\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": "2dbmYmsKijt74gStS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 09:11:50"} {"_id": "PrxNE8gBvn62h24NQ", "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": "ytqLzeFLCXcLu5ACi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 14:59:51"} {"_id": "myMmegYPq4SqASWGt", "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 (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 : 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 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 : 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 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 : File | 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": "TRCXsv84YLqHCarQa", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:34:01"} {"_id": "AW8KKhKLquhjo6pYF", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\talways (all t:Trash | after 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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:File | f in Protected immplies 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": "pbFAe67FRm9wF73ep", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 13:11:45"} {"_id": "bdkNMnCbHbAnw2bna", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 some f : File | eventually 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": "nkn3se5bo4JQP6xN5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:09:25"} {"_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": "i2xyZBAmSZu7KxsG2", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\talways (eventually some File)\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "TdmyuYYfKWpxejm4y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:44:04"} {"_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": "9vfgFLEAKGxayAsrx", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 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": "DAxygKKdopiNvoH6m", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 23:07:06"} {"_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": "zeSyP7pEphnYFzQJt", "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// 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": "cAjaq3y2tWFKB36XQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 13:26:02"} {"_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": "FntuozmBRR7jYcvAc", "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\teventually (some f : File | f not 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 Protected\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 eventually (f1 in Trash and f2 in Trash and f1 -> 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\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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\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": "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-11-26 11:44:27"} {"_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": "PZQD97AXMCp4npFeA", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "rYFNpRxBrcHoBXf5u", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 09:06:37"} {"_id": "WgKvtCz5vebc5zR7s", "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 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 \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\thistorically 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": "eEwbFYSWiAwiSXMoz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-27 23:58:10"} {"_id": "JM35Wg3hFmqPGuQQw", "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 (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 : 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 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 : 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 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 releases f not in Trash)\n}", "derivationOf": "AACeozygDSyMtcbSL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:35:51"} {"_id": "bPS5AFpxE3Jji9gQn", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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 & Protected) | after no(f & 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 & 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 & 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 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": "HodSqRYc2N6TvJvzv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 14:01:57"} {"_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": "SNCyCcxDyrKPcxqRz", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n 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 always all f:File | (f in Protected & 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": "khtSd2p2GoKq7GjAJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 18:21:10"} {"_id": "GnMx2ZPDRbTJikPT5", "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 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 \talways all f: Trash | once f in Trash implies 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\tonce File.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\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\tonce 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": "4MTcCvXrLCfyDjjbq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:59:58"} {"_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": "eeXbRQjjB6DRzzJ7C", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link 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 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": "pQYbN2cq85s94CDcv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:26:18"} {"_id": "YX8BNCknitRiv7H2b", "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 + 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 | no Trash and 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": "NoRwRRbgm2RtL9KCC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:47: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": "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": "BZhdh4xEeNQAsga28", "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}\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\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\tonce Protected always 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": "d5kQSpF6HkXi6xYWC", "msg": "This expression failed to be typechecked line 59, column 2, filename=/tmp/alloy_heredoc575385354619044526.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 12:14:59"} {"_id": "s8tP7GmKMCud5mXXf", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all t: Trash | once t in Protected and t not in Protected\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}", "derivationOf": "C3RzrJveQHSFgBnt9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:18:05"} {"_id": "e9pZvsgEXQaEXb5iS", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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,f2:File | some f->f2 in link implies eventually ( f in Trash and f2 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 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 | 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:File | f in Trash and f in Protected 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "zDd7TBYXzxmvZZhkK", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 09:08:09"} {"_id": "JPvaBMjQ6pM2b4ASD", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\nall f1,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 {\nalways all f : File | f in Protected implies f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\nalways all f : File | f in Protected implies (f in Protected' and f not in 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}", "derivationOf": "2yvBrwC7ndtxrE2iW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 23:02:26"} {"_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": "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": "qnLrdCqgBERQ9zMh3", "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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tall f : File | f not in Trash and after 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": "PSmYHSG5tGubLGR4P", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 19:57:52"} {"_id": "WLvKx73xqvby8yjcb", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 all l : link | eventually 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": "duiM8oJHr4iK4vW9Z", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 23:03:00"} {"_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": "dbGD27uLMrKxjoCcX", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n\n\n\n\n always all f : File | ((f in Protected implies f in Protected) or ( f not in Protected implies f not 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": "CiGJzy2EKYhhr3xeR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:52:45"} {"_id": "ojZSX78Qa6pReJzMF", "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": "6kAZZa2gvpncMdiXH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 16:13:53"} {"_id": "P8MT2v8JEhen5vknt", "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 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\talways 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\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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "kFQjkKGqXjAHai2vH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:18:53"} {"_id": "82CQ7EujbyRKCJGh5", "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\teventually (some f : Trash | 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": "9encjBf5ArD662Z9k", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 15:00:59"} {"_id": "ynzk7yhjkqEnGBSAc", "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 all f:File | f in 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 f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\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 releases 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\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": "GnGhcn6n8y9PQD98X", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-11 02:16:06"} {"_id": "hvvee89Hugebq2utP", "cmd_c": true, "cmd_i": 11, "cmd_n": "prop12Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually (some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "XbQQwYs4kp3cofa7d", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:39:49"} {"_id": "MLYQCydzguqvzdhwL", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "Aa4Q7YLwoig5MKrCB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:27:09"} {"_id": "hpamFvvjWvcFdLbyH", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all f: File | f in Trash releases f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "mfFao4anZyZwFvZJY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:16:54"} {"_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": "FEt5y4p3KBYtvuFPp", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all t:Trash | after 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\tall 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": "aKYxMGqJSaTvHNx5g", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:31:04"} {"_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": "vJJyJakom6cfECyKo", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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\t(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": "ivtJeRi9GKTHwBJRF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:50:44"} {"_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": "FaAQB5sDaTWwrKgxi", "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 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 \talways all f: Trash | once f in Trash implies 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 \talways all l: File.link | eventually l 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": "daBC7mMgZ6Wqa6Yki", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:36:32"} {"_id": "XihvR2GSxtKqY3a75", "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 (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 : 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 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 | after f 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": "GxjsLRmHaKf45Hv8B", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:28:08"} {"_id": "u7DB6TczHkKo8XBZC", "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 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\tall f : File | always f in Trash since f not in Trash\n}\n\n// some file will be 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": "HicSaQfYa3Xa6xsyF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:19:37"} {"_id": "KnaYfCAPCgDXwZdFt", "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 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 (File & Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tsome f : File | eventually some 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\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\tall 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\tall f : File | eventually f in 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": "nHXMW2TJw2urD7ae5", "msg": "= can be used only between 2 expressions of the same arity, or between 2 integer expressions.\nLeft type = {PrimitiveBoolean}\nRight type = {this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:34:16"} {"_id": "oCzxkHzXqZAgFQJY6", "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": "2021-1-13 12:55:30"} {"_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": "jHSHAcQCBC7WPCDgL", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File until some File\n\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 some f : File | eventually 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": "RwnvPBPHiPx5ZtPrz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:06:50"} {"_id": "RzBeQ8hrsf7Jk9ydT", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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 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": "cAp9q6yK5446djBYG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:41:47"} {"_id": "hbpqxfxw8jo66EjcY", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all t : Trash | after t in Trash or t 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": "EgdHJ4En4abKaRpGe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:38:50"} {"_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": "PjtzPSLM57jJJZExo", "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 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 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: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:File | f in Protected implies 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\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}", "derivationOf": "xzFj3P7GS4f22ipDa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:31:20"} {"_id": "JyKdqmSJ3iADZZAWc", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t all f:Protected | 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\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": "F9euQ3mgSzHBNHsvk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:02:47"} {"_id": "D4BBTgJJCNkewxSRs", "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 historically(no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n (historically (no File)) until (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": "EsJ7TwYhKYyjPDKby", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 11:35:17"} {"_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": "JcJM9hYsvqu5GNwoD", "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\n \tsome 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 \tsome f: File | always( eventually f in Trash implies always f in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\tsome f: File | always (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": "9jL6M89EguhkkR7tA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:16:14"} {"_id": "AcypBbFjo9cKzyFPu", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 & Protected) | f in Protected)\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways(all a : File - (File & Protected) | after (a 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}", "derivationOf": "TgAqMesvA72PPHMfk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:44:30"} {"_id": "becBYputd3d9bHMNw", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |once f in Trash implies always f' not in File and f' not in Trash and f' not in Protected\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JyXHnCMr6ZrupzsTv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:03:19"} {"_id": "MR88S5i8d48KYpivt", "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 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\talways no Trash & Protected\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\tall 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\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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p : Protected | p in Trash triggered p not in Protected\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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "5XoPqLTe2Pt4fqwFo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:25:10"} {"_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": "hNpD49FrdFretxnFZ", "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 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 \tsome f : File | always eventually f not 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\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\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 always no Protected & Trash & 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 always no File' & File & 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\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": "W6tLcocdDWrpRLXsE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:42:14"} {"_id": "rnpptfgL7DC22SXMM", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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 eventually (some f : File | f in 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5d4G2JeCpdLjQxLCC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:28:09"} {"_id": "SdRLo2fQGPsnm6DnN", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies always (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 | after 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 \t\n}", "derivationOf": "zhvAuXLy8itAshgEH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:29:24"} {"_id": "eeNxANZMMvCLok5b4", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "obFKMCYq6LrmmnXNm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:16:13"} {"_id": "4K2njbjy5s5J28jcp", "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\n \tsome 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 \tsome f: File | (always f not in Protected) implies eventually 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\tsome File in Trash since 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": "NYAHHFeYWQk5xL9eA", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:53:19"} {"_id": "7ci8qfMakNeGu5BFH", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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": "ptZgT2jt4qfDSoWzk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 13:49:15"} {"_id": "SJRNz65oqSSMojF5o", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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": "8TuJdTExtZwZecwXf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:26:21"} {"_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": "mkvxzQHJRpZfBik9R", "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-12-2 22:26:55"} {"_id": "4pLcqobxnJ7drP2GS", "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\tonce (no 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 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\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\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\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vgtYpMkW2Trncnx9T", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 22:56:54"} {"_id": "K3Nz8YpSTNpremue4", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at 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\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 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": "q2tzSktDh45qY7Mkg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:47:07"} {"_id": "LuQvrnWng7mge975w", "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 in Trash )\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\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": "tDdYfgzBCzgHX42MW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 16:23:10"} {"_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": "RBk54vDFrYCdjje3B", "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 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 File & 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\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f : File.link | eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Trash & Protected\n}\n\n// the protected status never changes\npred prop10 {\n\talways always Protected 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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "iBuCCYaffGruXc7en", "msg": "Subset operator 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": "2020-11-28 00:36:11"} {"_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": "AKXomTuFsxax9394Z", "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: 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": "2Mte9pJrMZkF6b5fe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:55:48"} {"_id": "8HtAvyDxbkyEve9ky", "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 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 (File & 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\talways no Protected & Trash\n}\n\n// the protected 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": "hF39rX8Hesoy8eG6o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:17:30"} {"_id": "WakmHvGhLY7dz5mP7", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "hJ58TWfrQFLTQeEmv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:53:53"} {"_id": "7m7TWJkgknyrvK7Lk", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\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}", "derivationOf": "o7i7tTzprhomXwEKW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:12:37"} {"_id": "j6xMdEarQiAk6wttN", "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\t\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": "zwK5C4coo8bvmgkHJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 17:55:41"} {"_id": "LWmfjQ4cEowqTKWvh", "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\n \tsome 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 \tsome f: File | f not in Protected implies eventually f in Trash and no f.link\n\n}\n\n\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\talways File in Trash since 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": "5vGqACq5HjZGvfjTD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:52:26"} {"_id": "ou8h4mYimh9BzPab8", "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 no Trash+Protected\n \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File implies eventually lone 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": "2gPbeWGxQYRKmBQhN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-9 13:36:19"} {"_id": "3L3cyJRyyRNRk7dzW", "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 (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 : 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 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 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": "croJii6R7habu8hdv", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:26:20"} {"_id": "DvCsx9oEGEN3CK85K", "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 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 \talways all f: Trash | once f in Trash implies 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 eventually all l: File.link | l 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": "h4R2fotpwS93ENYM3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:38:11"} {"_id": "HGeEiLaBthFWZ3Pr8", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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": "CtmMJ4z3BfSL27uRN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 13:28:03"} {"_id": "5LMhZBFXYyRfTgMvF", "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 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 | always f in File 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": "HqsLL7SZ8oNrjMY3i", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:14:47"} {"_id": "TgAqMesvA72PPHMfk", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 & Protected) | always f in Protected)\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways(all a : File - (File & Protected) | after (a 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}", "derivationOf": "cghbJ8G6DwEtXxpFQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:43:59"} {"_id": "hLyfz8HHC7kWe8RRs", "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 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 always some f : Trash | always f 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 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": "thXpBjKC9Eby22HTs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:32:01"} {"_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": "LhnsxbdZWHDNYLffi", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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": "sCtriaz9gSnMy5Suj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:44:52"} {"_id": "9jLLP9ahN5C7nggPW", "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 File & 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": "FusQkv4RvGtfpDE9D", "msg": "The name \"Deleted\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-19 19:51:36"} {"_id": "jiQwnJEALokD3fRJn", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 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": "Hr9h4NK6zKGTf4Tsa", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:37:10"} {"_id": "xQZ5p8X4SDzywjecB", "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\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\tall l : link.File | eventually l in Trash\n}\n\n// a protected file is at 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ShP6Decsv4wLnQuiS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:49:29"} {"_id": "BKSxYh6FaSC78aLNL", "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 | 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 (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 (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": "Z7wbk2QTttfMLXEKD", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:24:14"} {"_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": "imT9XYxpf6EuCPTMx", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 some f : File | eventually (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": "Lg9BW99yjDi22uzgs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:16:36"} {"_id": "Ho4eJMZppm87NvQjC", "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\tonce (no 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 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\talways (all f:Trash | 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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "Be2jHtbPir9SrQdpi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:10:38"} {"_id": "4G4GCjCiX6L4CCQ9q", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 \tall f:File | eventually some (f.link :> File).Trash\n\t\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": "CD62QczxQk9XRKdNa", "msg": "This cannot be a legal relational join where\nleft hand side is f . (this/File <: link) :> this/File (type = {this/File})\nright hand side is this/Trash (type = {this/File})", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:43:24"} {"_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": "obo5tYk7qxZS2DczM", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 in Trash since f not in Protected) \n}", "derivationOf": "vgMfPDu3ZH9S72FSa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:50:00"} {"_id": "fzur3xLxXodspgZfh", "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 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\talways no Trash & Protected\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\tall 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\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\t\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 p : Protected | after 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": "Smgjwn2iWcpGb4rjp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:20:49"} {"_id": "BQFvfSMMyBC7P4vvN", "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 (some f : 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\t\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\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": "LBWhhdKR9QjtuexSs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:32:11"} {"_id": "ufrgyTpgHWARqQvDx", "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 + 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\talways some File\n}\n\n// some file will 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\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": "9mx8WgphwMYkm4CiF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:57:02"} {"_id": "HsJsuPDMpypdKXDgP", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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\tall p:Protected | after no p&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": "NA4yv5YKrhLNPzTyz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 17:10:51"} {"_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": "pRGxMDeRBzguw9Zvx", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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\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 | after 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": "HhhrRS9nD87uSLA2o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:11:39"} {"_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": "scNEBGcshx9buaiKg", "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 after some File \n}\n\n// there is always some file in the system\npred prop3 {\n\talways some f : File | File' = File - f\n}\n\n// some file will eventually 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 \tall f : File | always (f in Trash implies 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 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": "8BpittN5JjAJGm8pZ", "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-11-24 16:41:34"} {"_id": "F9euQ3mgSzHBNHsvk", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\t all f:File | f in Protected implies always after 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\n}", "derivationOf": "JW22X9yEG6Rk5JMHQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:02:13"} {"_id": "yBvouuMypgnx5BqFD", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n 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 always all f:File | (f in Protected & 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 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 always all f:File| f in Protected implies 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 always all f:Trash | f not in File'\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p:Protected | p not in Protected' implies p in Trash\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n all 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": "dc6bM2FaHHv35nx6D", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:28:37"} {"_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": "azMtAhEjio4Nx8JrJ", "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 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 \talways all f: Trash | once f in Trash implies 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 File.link always 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\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\tonce 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": "AfCFTqJFRfu8uDK9p", "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-12-1 21:55:09"} {"_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": "eWpWanZs3oQ8wbthw", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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\tonce 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\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": "SSpr3P6oiarF7SKiC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 22:08:24"} {"_id": "jYnA9z73vdDJjdrus", "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\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\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 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": "LXsGsdYAz6NqEQNCf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:42:37"} {"_id": "sqjermYutcw9vh8RS", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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 & Protected) | after no(f & 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 & 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 & 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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3cGh6zxH6ZroLa5fv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 13:58:18"} {"_id": "N2uWKPaDccHseMDHT", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 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": "ib75yjsZ5MTv7TiJg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:08:33"} {"_id": "WZS5J5u39jueBpBiX", "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 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 \talways all f: Trash | once f in Trash implies 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\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 p: Protected | always (after p 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "HBgCzfKF5oNYvdof5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:43:18"} {"_id": "zisufJAmNByXRY5MQ", "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 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\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' = 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\t\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 always no Protected & Trash & 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 always no File' & File & 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\t\n \talways (Protected' = Protected until some Protected & Trash)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vDbSP3BQuywDgx4t8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:07:59"} {"_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": "sDLobbSLE767omcQZ", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\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": "7m7TWJkgknyrvK7Lk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:12:46"} {"_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": "aF4WPgjTLo66qoWgZ", "cmd_c": true, "cmd_i": 7, "cmd_n": "prop8Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "kzpXvNypNtoeq5na6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:38:35"} {"_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": "WQWJPk7sBioB2qQeS", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 link in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t \tall f:File | eventually some (f.link & 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": "9wfeGjFRQuZiqcBFq", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:45:20"} {"_id": "gJ9teRZhn5pNTsMFM", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 | eventually 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 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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - 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 : 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 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": "m7tK3npXiZLfFADWW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:03:06"} {"_id": "Pcz7HdXxLASBgfTAM", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "K4vDyLk6KePe9gtjS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:46:32"} {"_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": "zbFm3ceWNizC9tG63", "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\tno File\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always ((eventually f in Trash) implies triggered 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": "ZgqLMPt9TdwtdEGMe", "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-11-26 23:07:51"} {"_id": "G5A2z845vi4on4hkE", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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\talwyas(all f : (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": "JDhgYD2Xczh5PwFYc", "msg": "The name \"alwyas\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:51:12"} {"_id": "F99yY7xQb6wnDwDHG", "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 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\t \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\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\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 always no Protected & Trash & 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 always no File' & File & 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\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 => historically f not in Protected\n}", "derivationOf": "BDHfCrqynzXxL6gtH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:24:23"} {"_id": "SGPGZDwPKurXikacF", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n all f: File | eventually some 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": "YxonNXaD55QjcfyL6", "msg": "This variable is unused.", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:43:10"} {"_id": "zCcwAHN8S73mHPWWG", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\n}\n\n\npred prop6 {\n \n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "g7j4Z3eLgukm2ehiH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:39:29"} {"_id": "3PZaRzrLAneRtDg8C", "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 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": "DGdJeR4xkQBtqRbCW", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{Int->Int}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 14:59:21"} {"_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": "P4mbELqFA6Q7YbQbG", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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: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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "odmCnSvEWgrnAazbs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:27:25"} {"_id": "4XCufM4JrhtEFS2oR", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig 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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\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}\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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "Xs7nft8MboucJAuAe", "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": 778.1999816894531, "y": 199.13333129882812}, "File1": {"x": 518.7999877929688, "y": 199.13333129882812}, "RejectedByOracle": {"x": 259.3999938964844, "y": 199.13333129882812}}, "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-11-25 15:04:53"} {"_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": "6cp94qow67CDQtLB2", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always (all f:File | eventually f in Trash after always some (f& 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": "oBcc9htX8Zg7Da94A", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 19:10:06"} {"_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": "y4YaAbzgBDumCwsDj", "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 (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 : 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 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 | 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": "sNPdMnuPFcKmSRaRi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:28:39"} {"_id": "T2djWLuQodsFzbhv7", "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 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\t \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\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\talways some f : File | eventually f in Trash => after eventually 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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "Rumr5sAkr8hZF9xhi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 22:30:49"} {"_id": "tjRRZrrti8zwb55dT", "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\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always 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": "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": "2020-11-26 11:41:20"} {"_id": "XFNRMkfSjhx2R9Ppe", "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\teventually (some f : File | f not 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 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 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "z6psuaoGbMMe8csKu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:46:59"} {"_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": "63FuouKpB8u6nm3YB", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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\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 | after 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": "pRGxMDeRBzguw9Zvx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 20:11:54"} {"_id": "tw8eowMG7x4h3znCo", "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\tsome f:File | f 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": "od2SNr5aTZZqE2p4F", "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-11-24 17:08:12"} {"_id": "x2kcwmQdCGvjMiMFk", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 Trash releases f in Protectd)\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "sfuA7iJpdTkSXqaXG", "msg": "The name \"Protectd\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 22:27:03"} {"_id": "7FtSWiwrD6Xj4WDWA", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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\teventually some Protected & Trash => no Protected' & 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": "jTbuyB8Z8FNj9QkEA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:33:00"} {"_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": "6iQ5NZHTdpYP8MiPu", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually some f : File | 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 Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "Fzt7vPk5pmR8gjqxL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-7 10:07:12"} {"_id": "9YjrCv4G59r5iMJ9Y", "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\tbefore 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": "BiecSG6FhYXzJvn97", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 09:07:26"} {"_id": "AaEd5LLLGoCmkXFbH", "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-11-19 19:49:28"} {"_id": "EwLfiY68oBr2g8HrS", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\talways no File implies after some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "j8qg6wKGFEMd9vXBR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:19:26"} {"_id": "EmGhnmwBQDBBbFNCT", "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": "dJErc2r8yyeH6zjsz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 17:03:19"} {"_id": "jsXh36P3cn5eaN2vE", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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": "gj8uQKYfJ4Tyq8QM5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 18:03:21"} {"_id": "H3BS79X2eYbFiDXEe", "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": "g79E6GYjHMzpcjsZS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:10:34"} {"_id": "Yp7JPL2MGh2sR2GFG", "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 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 (File & Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\tFile' = 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\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\tall 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\tall f : File | eventually f in 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": "hkNn5qccjR5FvpbCB", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:33:15"} {"_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": "hF39rX8Hesoy8eG6o", "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 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 (File & 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\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": "PCAoriZnHuS3yaD5N", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:17:23"} {"_id": "oZyiRx7Jrt8DPN366", "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 all f:File | f in 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 f:File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n}\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\tsome f:File | f in Trash releases 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": "R46WnX5PhAomJqpua", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-11 02:00:34"} {"_id": "AKA69ik42JwZHnSrH", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (once f in Trash releases 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": "Xt74Tth626nDXMR6B", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:00:22"} {"_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": "hMLJfXyQuAQMgMu7T", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always ((eventually f in Trash) triggered 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": "zbFm3ceWNizC9tG63", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:08:00"} {"_id": "hrj9dQR5QJxdt347z", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 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": "WLvKx73xqvby8yjcb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:07:19"} {"_id": "CiGJzy2EKYhhr3xeR", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n all f : File {\n always (f in Protected implies f in Protected)\n always (f not in Protected implies f not in Protected)\n }\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vARibhzcMv226W3S4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:51:07"} {"_id": "5Jwv8ZawWMnq9nBYm", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n\tno File releases after some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5TJE26ceEriNsmgsK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:22:22"} {"_id": "dNKjZrCiAiQK56wu3", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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\t\n \teventually some f:File | f in Trash releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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\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\talways all p:Protected | p in File - Protected iff 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": "zEzT5f72uzYudEzyu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 04:17:08"} {"_id": "C3RzrJveQHSFgBnt9", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all t: Trash | once t in Protected and t not in Protected\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\tall 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": "SYXawMEEFRkzZmAnZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:17:56"} {"_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": "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": "bDBCiQgWapkkcgmxN", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4eujKdtNFTqdtPmF7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 20:02:02"} {"_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": "BM8acY6B6GXzfZNYw", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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&Trash | 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 since f not in Trash\n}\n\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 after (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 | 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\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": "tqi8fRJdtxssZtAyT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:38:36"} {"_id": "aHf3sdiovgopRAbhF", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\t always (some f:File&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 since f not in Trash\n}\n\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 after (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 | 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\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": "X9Zay2u8ue8pPRxsn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:39:32"} {"_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": "DyWjMAqBGWp2p7D37", "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": "hX3rz9KxkcaXt5T8s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:57:49"} {"_id": "bJpfR2eabqEQ4Ddgq", "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\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\talways no Protected & Trash \n}\n\n// the protected 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 + 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "tDCERGeWD8hTtAMkB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 15:58:40"} {"_id": "d9q6hhvCxMt86S6ig", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always 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": "q5kvsEMjmqKvrPS8P", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:38:10"} {"_id": "J34KQYzzLSXGKKgFe", "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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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": "JtPskT7nxEcSMt9qd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:31:34"} {"_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": "kgz7G3QodG2opCTEx", "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 since 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": "RiAA8o3jryjcPLqAr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:31:02"} {"_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": "jv6zqRkXQkmqSvovL", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at no time 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": "4gtogxXhowxPM8hAw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:42:27"} {"_id": "WyqJQ2G9Sn3okBHSk", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig 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 always( 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\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": "KuAMeRtPsS4hP4PhQ", "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": 467.5555826822917, "y": 199}, "RejectedByOracle": {"x": 233.77779134114581, "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": "2020-11-25 18:06:06"} {"_id": "WmbhgvYjwdWnKXWMR", "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 all f:File | f in 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 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": "T5cPjx23EtWCu6Ef6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-11 01:54:33"} {"_id": "dXm7JkkD9uDtSoobv", "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 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 | eventually f not 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\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\tsome f : Trash | after eventually f not in Trash or 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 always no Protected & Trash & 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 always no File' & File & Trash \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' => 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": "adFi4qq7TgNhcj3g4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 01:09:45"} {"_id": "wjiTP6x2fxmN4AsZd", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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 : Protected & Trash | after f 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": "smDWLsEKXt7QqGbig", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:27:10"} {"_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": "JuQ6ArYLBpt4CmjBe", "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 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\talways 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\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\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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "979mdYPp8cR2casTS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:19:58"} {"_id": "uwisEe6Npnacp6N6y", "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 \t\n \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 \talways 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\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after 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}", "derivationOf": "u7fPxCSLGBoeWbht9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:03:33"} {"_id": "CKoJ9YFv5T9ZakwP8", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link in Trash\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 after 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": "ZtkqM84ejCtqe8qLZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:22:24"} {"_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": "5irn7MH6PARe6u7R4", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 \tall f:File | eventually some (f.link).Trash\n\t\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": "4G4GCjCiX6L4CCQ9q", "msg": "This cannot be a legal relational join where\nleft hand side is f . (this/File <: link) (type = {this/File})\nright hand side is this/Trash (type = {this/File})", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:43:48"} {"_id": "42hXwBN9a5W8qZ2hW", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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 (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 since f not in Trash\n}\n\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 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:File | 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\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": "oCk2Yj4jF6fmnFo7y", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:52:27"} {"_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": "H6Q8gGbQGh3ngNk7w", "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}\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 always some File\n\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\n// some file will eventually be deleted\npred prop5 {\n \n\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n some f : File | 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": "YmSrtPvZqk4kFFB2g", "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-12-3 09:04:38"} {"_id": "H5hmXBxDNXR7rusRd", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all t:Trash | after 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\tall 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": "MPnNfx74cxtpCbEiN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:07:19"} {"_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": "DzhprcbrcGQis3Tbr", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always f in Protected since 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": "2r33CcPx9twopsdvH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:46:57"} {"_id": "Nvnj2pEy6ApHYggSa", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\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": "BE88vZMYpRK4RunP6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:07:25"} {"_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": "GCfm8MeeXhPAY2goX", "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 (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 : 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 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 : 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 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": "C6WkKuRJetBZasLgc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:42"} {"_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": "WhJTqBfhbxeFECtXd", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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 & Protected) | after no(f & 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": "ReKh8J9AbHhJwWLof", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:51:34"} {"_id": "mgsodGMiNswrLiAsL", "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 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 (File & 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\talways no Protected & Trash\n}\n\n// the protected 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 - Protected | 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-Trash | eventually f in Trash => eventually after f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | eventually f in 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": "Da2w6hzDQhiEhbhbs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:31:39"} {"_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": "wp2bez7SdsgKWphwC", "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": "vk8Av5Gz3yAAYKLzW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:17:27"} {"_id": "TsoZ773qHLYdswAw7", "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 eventually some (Files & 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": "i9NtdnoHexQ579WKo", "msg": "The name \"Files\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 17:09:32"} {"_id": "i4qES4tjLHhnTtfuv", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all p: Protected | always p 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "sjdmEznbBRFFgcyvh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:35:37"} {"_id": "vZBibsDMoEbeDYEyN", "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\npred prop2 {\n\t\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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always some f:File | f in Trash implies always 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": "oWAGBxMkpX4fFrao2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 17:58:08"} {"_id": "24REb2qJWpGWfqGRf", "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": "s252yjjeQAmX64Ykt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-12 22:04:25"} {"_id": "BCvpsMkaCFMg7E5yh", "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 \tFile' in File + 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": "nP2crsb8JMsmgiGWt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:14:11"} {"_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": "fjt7vJHJSoHG29woQ", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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": "SJRNz65oqSSMojF5o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:26:27"} {"_id": "xM5nyoJAcg6XEmC9e", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 and f.~link in Trash\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 after 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 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": "dBsGLeC8Wcb5NfYae", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:24:02"} {"_id": "JYiTvujCkKbYynmEi", "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 | f not 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 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 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-Trash | f in Trash implies always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RoKaeJu9PHGMDq8RX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 16:52:29"} {"_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": "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": "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": "LghXgXpJpoad9L7rA", "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": "xGmZLm3xfSsijrvoK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-12 22:05:05"} {"_id": "9JwsqS3CxNoZMjKjv", "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\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\tall t : Trash | t in Trash since 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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "umrq2YgiawaYsbGEj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-29 21:44:58"} {"_id": "aeGDuBANXttxaFLKP", "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 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 #File < #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\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// 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 always no Protected & Trash & 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 always no File' & File & 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\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": "8RgnwStRRraJYwMDL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:51:04"} {"_id": "24dut4nm9sojsaPFQ", "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}\n\n// there is always some file in the system\npred prop3 {\n 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": "4WrGMLf5KthNtJxZT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-18 21:03:03"} {"_id": "QZTemNfbh6HipBGCK", "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\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\talways all t : Trash | t in Trash since 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": "9PvysShYZhrbuhsaQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:43:48"} {"_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": "LxBtoAPjb3twgEqNY", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 : Protected & Trash | (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\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": "aw5yChxNtwt5RtrLP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:39:05"} {"_id": "8a8PF6WyJeXTJSskH", "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\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\talways all l : link.File | eventually l in Trash\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 - Protected | 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\tall t : Trash | once t not in 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": "Jwvio4ximex2ueP6B", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-29 21:51:11"} {"_id": "f4kPtat9sctAFTpHb", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "w4hpSPqjFit5DuRLC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:16:04"} {"_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": "7szhHRdYdetjHgBcw", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 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\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": "33Qvsxqvik5t622bk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:39:16"} {"_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": "eBeoahi6whmX3JhuF", "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 + 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 not in Trash and 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": "S22gXTSJ7TwN5mtfq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:40:40"} {"_id": "Jwvio4ximex2ueP6B", "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\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\talways all l : link.File | eventually l in Trash\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 - 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": "GQr3RPHgNsaHvbHfC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-29 21:50:41"} {"_id": "Sy6S6dnfqHKgGp3wz", "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\tonce(no 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 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\t always (all f:Trash | 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\t\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": "ntozswcdmXmzssEkS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:57:24"} {"_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": "r6D4hxWPrRoJqzK7H", "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 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\tsome f : Trash | eventually f not in (File + Protected + Trash)\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "MLPGTBT7N8aprJfHP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 23:50:28"} {"_id": "RM2qNdoXpfC6CdaDf", "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\t\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 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 p:Protected | no p&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-Protected | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "secQcwLbFqj4xrCat", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:22:37"} {"_id": "5XoPqLTe2Pt4fqwFo", "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 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\talways no Trash & Protected\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\tall 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\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\t\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 since 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "E3WeZXB8sxftba6cz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:23:28"} {"_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": "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": "3fXfG7zR2BEJj4e3K", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after 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 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}", "derivationOf": "ouGMhazjAtaXbmEXi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:28:49"} {"_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": "LnfBtBA6d7rbMXuJj", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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\t\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\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": "2Lz3PGxcTKRHyagSx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:51:58"} {"_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": "MqSAR579S9NHo36op", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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": "pYCpPb3c4ocZLBQoj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 13:30:17"} {"_id": "uEBjE3sqNFY2ruJgD", "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 always( 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}\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\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": "cY5x9C6BA5HZYwGc2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 18:08:01"} {"_id": "M8mKBdT7erZSAv8J3", "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 (some f : 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\t\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\tall p : Protected | p in 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": "pvzzQ3zeHSfcs524K", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:30:48"} {"_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": "f9PKXHWoNq4TswCnm", "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\tonce (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": "2021-1-14 00:38:05"} {"_id": "tNbxqK3WZCfXWQnfG", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\n \talways ( 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\talways no (Protected & Trash) \n}\n\n// the protected 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\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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 | f in Protected implies (historically some (f & 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 | after 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 no (f & Protected) )\n}", "derivationOf": "8zLoS3zDNCc7j5dco", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 21:54:13"} {"_id": "i7QnMatbyGhGANB8N", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - 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": "pchtPAQJSJuGqQMZS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:33:27"} {"_id": "ns82SNAfv5vrHogsq", "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 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 #File' < #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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "3hPThCnJk8nwgse3u", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:15:14"} {"_id": "nrPMyQ9cQdYJZvt35", "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 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": "hfk3Skw9NymJoZE3w", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 17:18:27"} {"_id": "eP5fFo3GgBJnZYSBh", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: File | (eventually f in Protected implies always f in 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 after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "WYoWgPbTe4kZhLCDx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:39:40"} {"_id": "N4Y9nuSNzbZwo2Lby", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after 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 | always p not in Protected implies after 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": "MGQajoopaa2fnHhcD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:18:35"} {"_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": "E3JDhmoNQjSeuunz9", "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 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\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\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\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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "7MXipM8AGzSRAWwPq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:20:32"} {"_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": "H5HyYHEiXtpSBbQds", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 always (Protected' = (File - Protected) + 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": "ToHEuNRxc9c9sqLR7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:45:37"} {"_id": "yEM5waPequks4w56z", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n \t\n\t\n \talways 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\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}", "derivationOf": "Mcq6ZPARXFvT9HHAB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:56:28"} {"_id": "LdjLamDxbQEAJ5BEm", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\tall f:File | f in 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": "nP3GQMBu7d6rryueG", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 23:07:47"} {"_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": "EbKSc659DqpygaW9o", "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 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 \talways all f: Trash | once f in Trash implies 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\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// 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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\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 f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "kFaRJka5KJ3SYRAj5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 09:24:19"} {"_id": "iZi9niCoirTSutdiG", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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 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": "XgBPeDnziab7qpvvF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-13 23:51:11"} {"_id": "uXH5RNSFNSyvmebjM", "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 \t\n \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\t\n \t\n \teventually some f: File | f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after 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}", "derivationOf": "RydwrwjckwZz3hM47", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:02:13"} {"_id": "uJLMCMTANpXw89qmf", "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 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 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 always (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": "CERXtNr6tSZ6PBWP4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 12:14:41"} {"_id": "sGSNDEJy6eKFknb6N", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\talways ((no File) until (some File))\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "G85wG8DjAYB4H2MYy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:43:42"} {"_id": "Xt9HeqWEAsiuFugMa", "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 \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": "nrPMyQ9cQdYJZvt35", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 17:20:02"} {"_id": "9Bks6qEGTbqE3782E", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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": "DqgEuWcP3xvwoN9Dt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 00:06:55"} {"_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": "FSETDJTdey64tswTo", "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 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 \talways all f: Trash | once f in Trash implies 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 \talways all f: File | always eventually f.link 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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "C77hu5QcAucCyZBWH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:14:08"} {"_id": "FvyZWoDDALMJ9BiJx", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually all f:File | 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": "8EppbBKw3fJKaABvF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:03:48"} {"_id": "HpXKWRg9xFJT36Yae", "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 (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 : 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 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 : 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 after 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": "bmeca3ubTLA93Fxhy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:29:40"} {"_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": "JEvFKro4cqigsx36E", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\n}\n\n\npred prop6 {\n always all f : File | (f in Trash implies always f in Trash)\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fZvKrdZLYThxHwrnn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:40:00"} {"_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": "xiQfbQyzvPaMYLHEA", "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\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\talways all l : link.File | eventually l in Trash\n}\n\n// a protected file is at 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xQZ5p8X4SDzywjecB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-29 21:49:33"} {"_id": "efbawyNBfcMdfzPny", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\tall f:File | (f in Trash) implies historically (f not in 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": "XMx2HAxCSRY55HjNX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:52:34"} {"_id": "zNSFqADBYsAP9big5", "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 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\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' = 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\t\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 : Protected & Trash | 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 File & Trash not in File' & 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": "x3QqydBYfFgKh7t5R", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:43:21"} {"_id": "bBmXG8uEZnpx9oGrX", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "YP2GyrfYeo7R7Liei", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:38:57"} {"_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": "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": "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": "3WK5tgC9HaA4mJfcq", "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 (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 : 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 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 : 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 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": "GCfm8MeeXhPAY2goX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:44"} {"_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": "HicSaQfYa3Xa6xsyF", "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 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\tall f : File | f in Trash since f not in Trash\n}\n\n// some file will be 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": "nxLa8mdLoYhxGRoFX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:19:03"} {"_id": "EqoNbCBbNWTYqiffc", "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\thistorically no 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 File releases 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": "KnFhxTWLofxtqsYqH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:47:40"} {"_id": "CK44KrraSQxCeL7eu", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 some f : File | eventually f in 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": "cWZzbDCQy2M8tyriw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:11:14"} {"_id": "HHKzgXA57GwSASyR9", "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 | eventually no f&File)\t\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 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 p:Protected | no p&Trash)\n}\n\n// the protected 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 | 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| 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: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\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:Trash | after no File&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}", "derivationOf": "cEin93iHnMqZ4YtYP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:42:50"} {"_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": "F4KvQH5yN49NhZHHk", "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\n \tsome 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 \tsome f: File | (once f not in Protected) implies eventually (always f in Trash) and eventually (always f.link in Trash)\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always 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\tsome f: File | always (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": "NFp4o2sEa2RMBmNA7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:13:49"} {"_id": "A29eK2tWyf2wtQZhY", "code": "/**\n * Linear temporal logic revision exercises based on a simple model of a \n * file system trash can.\n * \n * Solve the following exercises using Electrum's temporal logic, which\n * extends first-order relational logic with:\n *\t- unary future operators after, always and eventually\n *\t- binary future operators until and releases\n *\t- unary past operators before, historically and once\n *\t- binary past operators since and triggered\n * - primed relational expression e' \n **/\nvar sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link 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 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": "eeXbRQjjB6DRzzJ7C", "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": 798.65625, "y": 199}, "RejectedByOracle": {"x": 399.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": "2020-11-23 23:26:21"} {"_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": "25E8CBjhXFiqnPzAQ", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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": "oRcLNKsmZcf9HjZ3S", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:32:33"} {"_id": "ThiRk5A6aLh34a5fb", "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 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\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' = 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\t\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 : Protected & Trash | 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": "nWghJkubbywC7minJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-4 19:48:27"} {"_id": "Smgjwn2iWcpGb4rjp", "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 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\talways no Trash & Protected\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\tall 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\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\t\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 p : Protected | 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}", "derivationOf": "Lt3BYRgeZeq7icPp9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:20:36"} {"_id": "pDvZqbQqjhHzowHeN", "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 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\talways no Trash & Protected\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\tall f : File | f in Trash since 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": "HCfWdn7qSwD8gZ6dN", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:05:26"} {"_id": "HCJC38qC5NERuK2zR", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (File-Protected) in Protected'\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n all f:File | once f in Trash implies always some (f &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": "95Eb6spPQmTwBssNX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 18:54:06"} {"_id": "phkeqMJfwQHkpdLbf", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all t:Trash | after 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\tall f:File | some File.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": "o7ZdtoWGvFWzFSmCQ", "msg": "This cannot be a legal relational join where\nleft hand side is this/File . (this/File <: link) (type = {this/File})\nright hand side is f (type = {this/File})", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 18:02:59"} {"_id": "oJX3KPapvZJhuPhxL", "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 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 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": "qCKtMD6ZwWpMK8ZJx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:18:55"} {"_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": "Ls3M5Lzq9qyBmEC4J", "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 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 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": "hkztwS7ousCisiG9L", "msg": "This expression failed to be typechecked line 36, column 2, filename=/tmp/alloy_heredoc16635040812332777179.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:59:17"} {"_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": "M9jvyQYJ9gvasyH5e", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 all f: File | eventually f in Protected implies always f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always (File' = File - f since f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XueZk3SfgbvHqMHrm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:27:13"} {"_id": "dDpTRzGcnhTgcBzoh", "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 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 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": "4nYsWmji6Lxb742fz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:05:18"} {"_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": "TXZGmeWKc9F9o9mXA", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\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 & Protected | 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 => 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 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 f : Trash | f not in Protected\n}", "derivationOf": "SEvYjyoeCiyS2iMLC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 21:03:54"} {"_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": "mnWfcpacf8vjZhrJN", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always all f: File | always f in Protected since 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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\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 f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "EbKSc659DqpygaW9o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:25:45"} {"_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": "nkEjJBfiwLNqZewX8", "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\t\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t\n\tno File implies after always some File\n}\n\n// there is always some file 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 Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dqCCbPhFB9eNnAA4e", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:35:50"} {"_id": "vcWA4NY7PKNxqDNeB", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\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 always some File\n\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n all f : File | eventually 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": "uooEn6p3D5EWi2XLy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:02:49"} {"_id": "GtTTpxaRogxjfgzK6", "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:Trash | eventually no Trash & f\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-Protected 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": "t2yGD3RxiSRWZd798", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 17:07:53"} {"_id": "RmHTseoEJv4eLwn7d", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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 all f : File | always (f in Trash implies (f in Trash))\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "pcX3Q4oeawcYKz8Wk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:33:00"} {"_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": "iYRoFbhfsZX6GZeZw", "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-11-25 17:02:27"} {"_id": "CpG6D6S9YonhHF3po", "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}\n\n// there is always some file in the system\npred prop3 {\n 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": "gpK7SdeqvF6ak7LJY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:44:06"} {"_id": "jYnrdTBB9iPpAzkPk", "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}\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\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": "jLjaT6NfMsz7ECJwp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:11:15"} {"_id": "jzKk4v27ybrTJDkZB", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 all f: File | always f not in Trash implies once f in Protected\n}\n\n// the protected status never changes\npred prop10 {\n \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always (File' = File - f since f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "PBFK3MJzvCjMXBz26", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:24:18"} {"_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": "BLQkkvLR4N7Pp6Por", "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 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 | eventually f not 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\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// 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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all f : Protected | after (f not 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\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": "jZzjHNmrCcg8H9Kjh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 01:01:41"} {"_id": "JXtvqgm7eckBFJCSk", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "sMfieAXDWNNg6X4QT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:45:59"} {"_id": "K6CgpWxJoqXJbDAcK", "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}\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\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\tall f: File | once f in Protected implies 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": "FrxbBrBvouFuzqKse", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:19:53"} {"_id": "JtPskT7nxEcSMt9qd", "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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "jhfGyJepaTyZ99cDT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:30:31"} {"_id": "hhG48wyHy9fyo9eCy", "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-11-26 11:37:50"} {"_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": "KXsgZ57MqBKsYpigv", "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 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\t \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\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\tall f : File | eventually f in 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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "qgyBd25Y8ACe6oyPk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 22:28:24"} {"_id": "HsWJJf4yadb38k4K9", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and 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": "BAWqHJw8npoDkmn8v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:32:00"} {"_id": "XAKBdfDF5PQXRjz9n", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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.^link in Trash)\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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "77QdEbFCBReHRk6qy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:32:33"} {"_id": "vPMjpXBFk2Z8T56fE", "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 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": "neD88GssjHGTBSuoX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:34:07"} {"_id": "8HPPdgHKJzg7DMRb6", "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 \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\tall l : link | eventually (File.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": "7kne7KWZzr3yGf8Xq", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-2 20:17:18"} {"_id": "3586RekanmPZENGuQ", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\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 & Protected | 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 => 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 | always p not in Protected => once 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": "75KdcDyJT34RjcGCM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:46:11"} {"_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": "mvXvfcA5j3zjQqwGp", "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\talways (eventually some 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\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\talways (all f:File.link | eventually f in Trash)\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all p:Protected | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "yeS8ajB9umieNSFxR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:09:50"} {"_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": "y44q8N5girFxzcPkZ", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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.^link in Trash)\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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RAydSH6iaRnDyMHQo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:34:45"} {"_id": "KkZ6WeEbWWz3wQxqF", "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 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\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' = 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\t\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 : Protected & Trash | 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": "PfuhuXqm7ka4hwjpX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:41:45"} {"_id": "PDQ7ejNCBSQFbmeNP", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link 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 Protected implies always 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": "KsAvGhqDJPdQpjNco", "msg": "This expression failed to be typechecked line 66, column 16, filename=/tmp/alloy_heredoc8232502418529303993.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 23:18:37"} {"_id": "2wTnb4AEEuhJDCiWY", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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\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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 19:35:51"} {"_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": "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": "YackNJje8N55ZNTWy", "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 \t\n \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 \tsome f: File | f not in Trash implies after 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": "PuNCLvs84SirdiNF2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:51:56"} {"_id": "CqfLLPxLgRQSLfqrS", "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 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": "Skex4dME5vb8cXr4o", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:14:08"} {"_id": "HwGpPWmBePAmpri2Y", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "ggLDkPyvAiDv4tXnW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:07:07"} {"_id": "DWZoA2PP62eQPBNAZ", "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\thistorically no 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": "He8jAbQ9DLWZWg2CG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:42:25"} {"_id": "YJZERXjfvstHdY26Y", "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 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 (File & 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\tall f : File-Trash | eventually f in 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\tall 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\tall f : File | eventually f in 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": "XaDyy7hB38L6aCM9w", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:37:08"} {"_id": "mG3XehCNSHiWT3qzy", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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 | always (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": "nwoFktqXoTDWZtLpc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:46:44"} {"_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": "EMRKxfDrGgpwSHYmQ", "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 Protected\n \tno Trash\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": "rAxbzqjXGa755yZbj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 19:32:40"} {"_id": "KmJPLd4LdKrekM8Mt", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n 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 always all f:File | (f in Protected & 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 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 always all f:File| f in Protected implies 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 always all f:Trash | f not in File'\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p:Protected | p not in Protected' implies p in Trash'\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "buWuMowkmHK3gXPSp", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:26:54"} {"_id": "kkG4v6BSeYDWZRzkD", "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\thistorically no 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 Trash\n\tsome File until 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": "pvELTpnpmmHkWbnLe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:48:25"} {"_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": "3hPThCnJk8nwgse3u", "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 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\tall f : Trash | f in File until always f not 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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "BWjZMMgPCKCQykWLR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:14:34"} {"_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": "LbhscFb8swg5MYJzz", "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 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": "Lgu7zDMjxGvEgEKRr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-27 23:49:10"} {"_id": "xHCQh4SteFzqnWzsz", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | f not in Protected'\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\t(some File) implies (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": "Z8FPnsXtXooWzFoh6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:41:59"} {"_id": "ZxBrA8BzhdrFTgQoT", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 once Protected always 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": "KhwDikRzKuvKgMTQJ", "msg": "This expression failed to be typechecked line 68, column 3, filename=/tmp/alloy_heredoc4188135465779000065.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 22:27:42"} {"_id": "H5AmeAEsRyBSvALzD", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\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\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "xMeDQ8yKSCifPHwXS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-14 00:15:23"} {"_id": "gHBxPoQH7iNu5i92g", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |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": "EfwsPKmAEvnuT7SDT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:35:45"} {"_id": "JHxMCXwkTCkFg4azv", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 and f in Trash releases always 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": "NsppY3vXdgfgDKvgg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:22:22"} {"_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": "3bejoPotCEfEpzwai", "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\n \tsome 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 \teventually File not Protected implies File 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": "dJD8xGC5PrRAn9aTY", "msg": "This expression failed to be typechecked line 37, column 4, filename=/tmp/alloy_heredoc10088830094518709116.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:42:21"} {"_id": "yJSsAfnFfiJTG6ZNH", "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 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\tall f : File | f in Trash since 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": "wsQ4yREHHSQZP47WM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-27 23:54:30"} {"_id": "NB4zwSRdswGdh4sH4", "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 (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 : 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 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 : 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": "EFeHWM7hGdCgENR9i", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:27:13"} {"_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": "yZoGBeajbx6fsERTA", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "R9zoZdwgggne2SXaf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:17:29"} {"_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": "77DjdtAzEhzcQG7Xm", "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 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 File & 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\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n \talways all f : File.link | eventually f in Trash\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Trash & 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\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\tall 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\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\t\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 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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "2Bv7Jhiv7T3x2rSSz", "msg": "Subset operator 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": "2020-11-28 00:35:24"} {"_id": "DAxygKKdopiNvoH6m", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 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": "gqTZ8Jcb27vwR9NPT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:06:28"} {"_id": "hkztwS7ousCisiG9L", "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 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": "kq9z8qxXAH4yXR7LM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:59:03"} {"_id": "C76BoKczxhwFPgpkj", "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\thistorically no 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 File eventually 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": "kkG4v6BSeYDWZRzkD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:49:19"} {"_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": "fvRvdN72q5gJz8Mo9", "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// initially there are no files, but some are immediately created\npred prop2 {\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 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": "FWchyHrGyGTSMxZ7q", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:48:39"} {"_id": "SDt8PqhjGxyedcJYj", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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": "yoqEvitNko3jA5LXh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-8 03:53:23"} {"_id": "65C9JPruqgynC2eXT", "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 | f not 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 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 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-Trash | f in Trash' implies always f in Trash')\n}\n\n// if a file is ever in the trash, it was once outside\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Tw84fYW8Q3ewiorkw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 16:58:59"} {"_id": "ZxE7mjTbzHZuX2kyN", "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\npred prop2 {\n\t\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\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\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always some Trash implies (always some 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": "aEf3mPcuLAeffNEq4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 17:58:59"} {"_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": "u7QXXmR5tdPQk6k4s", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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\teventually some File & 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": "RydXa9F8Az6F8qYaM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:33:54"} {"_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": "duqgxhPWGKfegfRfe", "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\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\talways no Protected & Trash \n}\n\n// the protected 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 \teventually \n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "uKpYWquuPXobjSRzb", "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-11-25 15:22:27"} {"_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": "uEbALknvf3u7eGG5T", "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 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\n}\n\n// some file will be 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f : File | f in 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\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\thistorically some 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": "u7QXXmR5tdPQk6k4s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:35:28"} {"_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": "BjHMcwPzcBkjwEA6N", "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 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 \tall f : Trash | eventually f not 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\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// 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 always no Protected & Trash & 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 always no File' & File & 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\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": "aeGDuBANXttxaFLKP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:51:41"} {"_id": "6edvcNEDWaiKJXxnb", "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\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 always 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": "qKBNpcpLms6b8xAXr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-12 23:54:17"} {"_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": "mtkSWRRzaMx85aZ8c", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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\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 | after 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 in Trash since (f not in Protected) )\n}", "derivationOf": "oLb4DwxknzScBNk7e", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:22:22"} {"_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": "9mx8WgphwMYkm4CiF", "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 + 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\talways some File\n}\n\n// some file will 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\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": "BogrPby9n4bBX6zWX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:56:48"} {"_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": "HNt4cJHi3LPx9KMws", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\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": "24FkpnPPyJmdh4d43", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 20:04:04"} {"_id": "2YCXjKJL9ZaepbRjM", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n 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 always all f:File | (f in Protected & 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 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 all f:File| f in Protected implies 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": "JAuk2hnAL237s5Kov", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:23:29"} {"_id": "MrieKkxj52sFLSQLH", "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 + 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 | eventually 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 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 always eventually File.link 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 all p: Protected | historically p in Protected and always p in Protected\n}\n \n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | eventually 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "a856DAXQqEic5BG3k", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:20:17"} {"_id": "jDEPKCp2HcE3vQnH7", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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": "9NWktp8Sst93kmw7P", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:26:32"} {"_id": "QtsBSPWAvmKJHkzwD", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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": "5sgXtJjrHCC8hpmz8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 18:10:10"} {"_id": "zGAWPgcFwJZCYiYdE", "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\tonce(no 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 f:File| f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n\teventually(some f:File | f in File implies eventually 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 (all f:Trash | 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 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 (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 | 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 always f in Trash)\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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&Protected | 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": "wKcB46afmk8gt4D62", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 01:04:02"} {"_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": "3bZrhvT8nHKdQbaN7", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 \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:File| f in Protected until f in Trash-Protected)\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "BhXXHiYhAyDeF2gvv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:51:25"} {"_id": "K5tyeQbT3LfBASAJn", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 | p in Protected implies after 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": "NciNXggczjmNimeSY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-13 00:03:34"} {"_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": "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": "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": "WdQwsEHHybNQGEQmz", "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\tonce (no 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 f:File | f in 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "Q87XCSt58D4k9xvj8", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:08:07"} {"_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": "RPrPRKCXzTuxhH4eF", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 some f : File | eventually 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": "S7HomtqgzxQpeP7rj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:09:02"} {"_id": "QquBpcutGB87jEtfJ", "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 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\t \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\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\tsome f : File | eventually f in 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 always no Protected & Trash & 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 always no File' & File & 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\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": "37qYjWqQeJSgfJ7L7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:22:03"} {"_id": "mXAzRMdo3B2ch9ais", "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": "Tu8uReBkP45M9rzoe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 16:13:21"} {"_id": "HhhrRS9nD87uSLA2o", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 | some (f & Trash) implies no (Protected' & f) )\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\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\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": "dmq7uExhAY4hMSmd2", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 20:10:37"} {"_id": "ytqLzeFLCXcLu5ACi", "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": "3PZaRzrLAneRtDg8C", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 14:59:37"} {"_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": "Pug3JE773wqWmRe9h", "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 since historically 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": "NXRrBWgSZhQALm6QF", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 11:38:00"} {"_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": "sh4DEvsHrKYS9PycW", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\tall 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": "8wzqEJtrbbS2w3C8c", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:14:14"} {"_id": "u7fPxCSLGBoeWbht9", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after 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}", "derivationOf": "MQs7AJHSktx2L7QQX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 00:03:18"} {"_id": "3TaQAAPA6vpDpCuQq", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 some (f.link & Trash)\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (all t:Trash | after 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\tall f:File | 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": "qHJTdn5PXJuhDYHCz", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-24 18:28:05"} {"_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": "9cqup3oqwXecf3M72", "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 no Trash+Protected\n \n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File and after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\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 always 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": "wFs4BY3ci85JjLMA5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-9 13:45:24"} {"_id": "QRRSSRWgxMgnHpkRx", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |eventually (once 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": "eYJ2WPMwgZ7RQW8Pq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:11:36"} {"_id": "rDMRKh8rHvDFEnhfu", "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 : File | f in Trash implies 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\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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "JTkPRnHHx2GuyifNX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:47:45"} {"_id": "dYiKvco3eJzQuWC9q", "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 + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t(historically no File) until (some File)\n}\n\n// there is always some file in the system\npred prop3 {\n\talways (some File)\n}\n\n// some file will 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": "yyRts2fhA99Ms8sC4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:51:30"} {"_id": "zt4DjjPTMRdFLgLhA", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 | always 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": "pnLYeJ4W8RDdcXut7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:24:55"} {"_id": "8BSL5S8CYHf5tjT2b", "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 | 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 (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 (File in Trash historically 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": "DTj3Z9sCoYS9CxQsZ", "msg": "There are 1 possible tokens that can appear here:\n)", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 10:23:17"} {"_id": "HNmqxks2xj8RY5dPS", "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 \t\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": "5wpJgrXBLKQcrjPPY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:04:38"} {"_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": "PHCiLgNmrcXBdQukx", "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 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 once some f : Trash | once f in Trash implies always f 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 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": "pY2XwPE9MQGzZ78Nt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:31:33"} {"_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": "Rs57kKMuvMCuZfWMA", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&Protected | 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 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:Trash | after no Trash&f)\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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 Trash releases f in Protected)\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 triggered f in Trash)\n}", "derivationOf": "yMFCtCTSqTS3K9WNi", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 17:31:49"} {"_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": "rkg5jHrTMroDqux2f", "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\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 | 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\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 : 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 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": "9psKWDgJcEot5fFGR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:30"} {"_id": "sPKoWjoz2wFguHkuz", "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 (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 : 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 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 File 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": "3L3cyJRyyRNRk7dzW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:26:24"} {"_id": "2rx5ZBt9vzEFahDvi", "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}\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\teventually some f:File | f in Protected\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": "zMJaGzGcWvwrKBgZT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-12 23:49:13"} {"_id": "wFcqgtEihfvtbZw9d", "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}\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 | some File 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": "yHDCSY294NhorHD7z", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:46:40"} {"_id": "njkfEPCHSNtLv9J8J", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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\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 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:File | 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\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:File | f in Protected implies (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:File | f in Protected implies 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 implies f in Trash since f not in Protected)\n}", "derivationOf": "BvCQrXAxJmTGpxhKa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 09:28:18"} {"_id": "Rrdiyc8xSCjdSvrkg", "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 no Trash | no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n some File and no Trash and no Protected\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": "qgkM3roeQhhqmhrwA", "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-11-18 20:59:21"} {"_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": "8wmLZcyTi9nkJjuKw", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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": "KJbMC8trTEH6WtECH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:09:09"} {"_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": "BNMArEkk7dKxtZpkv", "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\n \tsome 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 \tsome f: File | always eventually f in Trash\n\n}\n\n\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\talways File in Trash since 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": "XGCzDny6ovC7W66dy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:57:38"} {"_id": "Ep3Ah6dKtGpsAZDTC", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "JXBXF59ap3sZtpP3E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:16:20"} {"_id": "FHhxZqLipmiNz7EbQ", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 (Trash & 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": "BN9qcLygsTqKGGJmk", "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-11-23 22:35:28"} {"_id": "QwSWgwX9RXehyuXTu", "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\tonce (no 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 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\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 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( all f:File | f in Protected implies 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\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\tall f:File | f in Trash since f not in 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\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": "RRC5EvnTKvtiBSksF", "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-11-26 11:12:58"} {"_id": "ajiA42ycxmaGoB2ty", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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&Protected | after 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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f:File | f in Trash since f not in 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\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": "aePBdqXpQ9B6w9Bjv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:26:34"} {"_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": "z4d9b5Au7MANzZmzx", "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\n \tsome 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 \tsome f: File | eventually (always f in Trash) since f not in Protected\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually f in Trash and eventually always f not in File\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways File in Trash since 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": "BiE3qoonDPZxf2XT6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 19:02:34"} {"_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": "gBMZc8hZnas96FycM", "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+Protected)\n}\n\n\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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 eventually some f:File | ((f not in Trash)+(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}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Z6YmGAXbJqaWoPPbh", "msg": "+ can be used only between 2 expressions of the same arity, or between 2 integer expressions.\nLeft type = {PrimitiveBoolean}\nRight type = {PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-16 18:17:50"} {"_id": "gWuZgq5hCQJr5Kgch", "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 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 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: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: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": "89QCKgKjn9jBsgDqq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:23:50"} {"_id": "QZvXayHRKEdWP4C37", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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": "KnssMSQRqdWjyR2b6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:49:07"} {"_id": "8wuk8Cbv7Wabf28Sc", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\t(no File) until (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": "dwhTWw7GoZ9yNkWWT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 17:32:57"} {"_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": "xLjQcZWmJwFwqw6x4", "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 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\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": "DkazuGYBFEmFiPwF9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 23:17:47"} {"_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": "jz86D5JBgFGLeTjaE", "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\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 : File | f in Trash => always f in 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\talways 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\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 - Protected | 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\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 & Protected | 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 => 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 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 f : Trash | once p in Protected && p not in Protected'\n}", "derivationOf": "PqB94uqkLuMmmyfR8", "msg": "The name \"p\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-2 21:03:22"} {"_id": "NRQ8DBs6n2z6Tcdhk", "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 \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\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 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": "gvxyNNctoWS5d6BMK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 21:21:42"} {"_id": "kQxfmxcWMdS7g7ia9", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 (no Trash + 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": "KaaJdckD9M7YWmL2x", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:36:53"} {"_id": "7MXipM8AGzSRAWwPq", "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 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\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\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\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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "QDPhwLrY95a6cP6X7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:20:18"} {"_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": "jY9KskdmXF53djf5F", "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 + 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 no Trash and 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": "RZ4MYDWcpFr479Jnn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:39:01"} {"_id": "QPHSxSiSbsaAFiLiQ", "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 Protected\n \tno Trash\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": "EMRKxfDrGgpwSHYmQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 19:32:54"} {"_id": "Af78pwPzAGiMmuD9N", "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 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\talways no Trash & Protected\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\tall 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\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\t\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 since 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": "BxbJLuqzqkoDHzFvP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:18:35"} {"_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": "bttdrAQNZZsDS4gBw", "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 \n}\n\n// there is always some file in the system\npred prop3 {\n\talways (some File)\n}\n\n// some file will 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\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": "LsSCZZxLKCfLFyNcw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:49:05"} {"_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": "oZMQZo6XibMS8i3JK", "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\t \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\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\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": "EEaKo6QMrMj5PkgMC", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 15:10:20"} {"_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": "bXzB7mMkHQzaEGqQf", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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\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": "Ao25sLxTToeNDAeCL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 15:14:42"} {"_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": "H4PY2caqHXT7SBt6H", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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\t\n \teventually some f:File | f in Trash releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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\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\t always all p:Protected | p in Trash implies after 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}", "derivationOf": "CkAdkqNkn2sbgQxuc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 04:20:43"} {"_id": "LvvewtTGwGRfeuscH", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (some Trash implies (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\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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "8LYeRyQSK2TykKhSb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:37:32"} {"_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": "ceMFNm5EKwDmJMsb2", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\n \talways all f : Trash | 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": "vLeJeGjuyoH3yW2fr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:38:19"} {"_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": "umgA9x49Xqg6MFWMs", "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 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\talways all f : Trash | f in File until f not 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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "oMwvgbeF286cfSQAA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:13:24"} {"_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": "xJctaLgGbxory2p3X", "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+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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\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\talways (all f:File | f in Protected implies 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\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": "JPryQusRdw8u6dNKz", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 13:27:02"} {"_id": "gHHt9gQY9EvXX2e3q", "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 | f not 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 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 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "FntuozmBRR7jYcvAc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:44:43"} {"_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": "h73BQaXyXgeLbRngJ", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 once Protected always Proteced\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "vS4xZjyu7x4QKBjff", "msg": "This expression failed to be typechecked line 66, column 3, filename=/tmp/alloy_heredoc3881827968807791099.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-23 23:18:08"} {"_id": "K8Zdgnh6zxFzRzeRA", "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": "45vjSQXZKKbJ9Wa3v", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-12 22:04:06"} {"_id": "nWghJkubbywC7minJ", "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 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\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' = 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\t\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 : Protected & Trash | 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 File' = File - File & 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": "YEYX2ERFPKzCgJTfw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:47:26"} {"_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": "3hPR8j2EjEQ2MXLnr", "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 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\t \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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\tall f : File | f in Trash since f not in Protected\n}", "derivationOf": "K8Cjs64DwifvReYyR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 20:44:06"} {"_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": "f26YSRatW8wKYhy3R", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\teventualy 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": "x8YexHDzwPXdHMg8e", "msg": "The name \"eventualy\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-8 02:49:34"} {"_id": "Z6YmGAXbJqaWoPPbh", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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 eventually some f:File | ((f not in Trash)and(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}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "qjcLDEuZMyMtQNXMM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:17:41"} {"_id": "kKrKCfNsDs7SX9ZnF", "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 all f:File | f in 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 f:File | f in 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": "xf2MTBXWE7PkDzRZ3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-11 01:57:46"} {"_id": "7kne7KWZzr3yGf8Xq", "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 \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\tall l : link | eventually File.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": "yiGpx9u9fo7Jka9D6", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-2 20:17:06"} {"_id": "J3bSmYkAm2tpPkq4o", "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 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 \talways all f: Trash | once f in Trash implies 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\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 always Protected\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "PLdy78kQikupH3nHi", "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-12-1 22:38:10"} {"_id": "z6p5L93vNZzXp45wt", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 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\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": "qoBtW78FYTjc2PXmA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:43:10"} {"_id": "RoKaeJu9PHGMDq8RX", "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 : File | f in Trash implies 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\talways 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\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\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 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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZzLSnWKKKhcXjbXrM", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 16:17:30"} {"_id": "yWxvRkor4ZSSbYoYw", "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 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 \talways all f: Trash | once f in Trash implies 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 always all l: File.link | always (eventually l 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": "dEMgCFNJdoc3R8LF6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:39:19"} {"_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": "y5bJXPNCe3wyhcurx", "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\tonce (no 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 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\tall f:File | always (f in Trash implies (after 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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 09:06:34"} {"_id": "SSpr3P6oiarF7SKiC", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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\tonce 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\tall 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": "6HP99P95cvk9waGAT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 22:07:37"} {"_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": "vSaG6aAikQsC5SMo6", "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(once (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": "SzQKX2As2LtsJk28Q", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:01:49"} {"_id": "FPCY3Pjm9TQSsEAeX", "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 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 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: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: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": "RamhcwJuPdokiQRvu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:25:12"} {"_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": "EgdHJ4En4abKaRpGe", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - 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": "7a5eoS8mDf5Meacv3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:35:47"} {"_id": "PX2mZrN5JBCJtDCRw", "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\n// initially there are no files, but some are 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": "pGGhLv2w6bNgXSmnt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 02:48:59"} {"_id": "aYGAde4XboEWAyAqB", "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 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": "XbprLKBCNCBJwdfas", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 16:14:37"} {"_id": "SYXawMEEFRkzZmAnZ", "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 \t\n \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 | eventually f 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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n \talways all p: (Protected & Trash) | after p 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 | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all t: Trash | once t in Protected and t not 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 - Trash) | 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": "ADTf2MQLPkPSeWjvc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:14:33"} {"_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": "kYWaPdq4Mv2b7ZgzX", "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 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 all 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": "dDpTRzGcnhTgcBzoh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:06:31"} {"_id": "436HghZxBWMFo2ERm", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall p: Protected | always 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": "Xsgguz5PzrthzD2do", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:29:52"} {"_id": "K4vDyLk6KePe9gtjS", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "cCaBpfsPpibdm55LF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:46:29"} {"_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": "Bjz5qPuQ6hdWe44mu", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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 after f+f.^link in Trash)\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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "oLymwBnqKWWFvYgWL", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:35:24"} {"_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": "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": "Tbnd6jutRTM9yPES7", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all f : File | f in Trash implies f in Trash'\n}\n\n// some file will be protected\npred prop7 {\neventually some f : File | f in Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\nall f1,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": "q5GSz2hB4YiAw2wuw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 22:54:29"} {"_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": "9JYTLwzCinaGRRKY7", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-Protected implies f' in Protected\n \n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "4MAQDs6gPeguNFYZY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:37:59"} {"_id": "CxqBDY9Wq7z7t6AFh", "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 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 \talways all f: Trash | once f in Trash implies 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\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 p: Protected | always (p 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "WZS5J5u39jueBpBiX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:43:41"} {"_id": "6za4n2GXeYwciDE28", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n eventually ( some f1,f2 : File | f1->f2 in link implies 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZQD4BpwKEYiBEEG6E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:44:26"} {"_id": "jM2o7nk6hMtgMxWuv", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |eventually (always f' not in File since f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "Rbw9Bgr6fMgJbaGMh", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:15:14"} {"_id": "uYpfxN4TajFfuqWJn", "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 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 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 always 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": "ZJS59Nkby2Laps7YZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 12:36:55"} {"_id": "RwnvPBPHiPx5ZtPrz", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File until some File\n\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 some f : File | eventually 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": "SKMJtGToiMRhLLAnA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:06:47"} {"_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": "8msgvffj7a6MCfmCB", "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\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\talways all l : link.File | eventually l in Trash\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 - Protected | 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\tall t : Trash | once t not in 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 pt : Protected & Trash | after pt 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": "wiaKqPdZrpu5w6xBA", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:53:22"} {"_id": "y7gGcThTeEGc7zRdr", "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 + 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 not in Trash until 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": "AnY4ZnkYi2ZpyektG", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:45:16"} {"_id": "MQeZzFLSPbmAkXpNS", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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 all f : File | f in Trash after always (f in Trash)\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "e6SCQG8JrWD7yFwt7", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-25 19:32:19"} {"_id": "S42Y4LQZTjMtjLZwf", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in Trash \n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n all t: Trash & Protected | after t 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": "SXziDsBtLTkCLrvvk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:55:21"} {"_id": "7uMTNZo6GLfvNrZpz", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - 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\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\tall t: Trash | once t not in Trash\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 always all p: Protected | p in Trash implies after p 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": "Br74tqcSxroc6ciia", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:48:57"} {"_id": "Jp9TRtzehJrYoFQTr", "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 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 (File & 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 => 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": "DWfZP8MSZNoFrbMBb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:03:02"} {"_id": "nHcB37qGMq2tQjL9Y", "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 File' 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\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 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": "zytxdLjwPKhk6MnYZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 16:30:17"} {"_id": "hctjS83QNJoDevzGY", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File until some File)\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "NBXddwCKhMJKQbGzB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 12:02:18"} {"_id": "qtX4jTR3rDiqaE3pw", "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 + 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\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": "jzAXffx42vYtfyuSQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:21:06"} {"_id": "kARhj6k7TmHy4nfpe", "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\tonce (no 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 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\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\t\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)\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\tafter (all f : (File-Trash) | \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "nsWLvvZtS9GitFLGn", "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-11-25 23:00:40"} {"_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": "hbwc2frhtdJXNrmAy", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "53d4zhqKB7Ge7TW5g", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 13:42:23"} {"_id": "ouGMhazjAtaXbmEXi", "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 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 \talways all f: Trash | once f in Trash implies 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\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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall 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}", "derivationOf": "v5Z6b24W57CSwC3dS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 22:28:44"} {"_id": "KbFL4C7h5HkuNxP4Z", "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 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 \talways all f: Trash | once f in Trash implies 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 always all l: File.link | always eventually l 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\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\tonce 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": "xpu2S2AbsNCfkobo3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:48:04"} {"_id": "H2C2nc783AX5n2b4Q", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "4d7dxt4To88KhkAXu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:18:33"} {"_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": "8NNERmyDkJSKt8y3L", "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 Protected\n \tno Trash\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// some file will be protected\npred prop7 {\n\teventually some Protected\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\tsome link implies eventually (link.File)-Protected in Trash\n}\n\n// a protected file is at 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\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// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall 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\tall f:File | before f not in Trash implies after File'=File-f\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "LHm23wzFsGByvHB8H", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 19:54:58"} {"_id": "4MYu7QkpXk9dS7rqw", "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\teventually (some f : File | f not 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 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 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "XFNRMkfSjhx2R9Ppe", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:47:02"} {"_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": "Z7wbk2QTttfMLXEKD", "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 (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 (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": "Pdum3zgr2dvc4KxBD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 10:23:33"} {"_id": "Nk57rWi8An2JAt7Qs", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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 all f : File | always (f in Trash implies always (f in Trash))\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in 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\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RmHTseoEJv4eLwn7d", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:33:13"} {"_id": "m3qED7ghmpdpKTaX8", "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\tonce (no 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 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\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\t\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}\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\tall f:File | f in Trash since f not in 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\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": "aJi4rrR3NPkr5sMFD", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:14:54"} {"_id": "ThPZamMcDEt7rbNYm", "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 (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 : 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 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 : 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 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": "3WK5tgC9HaA4mJfcq", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 10:39:46"} {"_id": "Dtqzmfjckf4CkJqws", "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 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": "gSTFsANxBhLS6t5gy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 17:04:53"} {"_id": "nBoyFdsm8R7shBJw8", "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\tsome f:Trash-Protected | eventually no Trash & f\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\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 | no p&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-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\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&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": "bp2hWG383hsoex5jo", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 17:15:17"} {"_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": "kMdmENNXhPYswkJTc", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\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\talways File in Trash since 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": "PtoYj87odL3tCBaSR", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 18:53:10"} {"_id": "Nb3DAM3uo98q5NGKp", "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 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 \t\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\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\t \tall f : Protected | (always eventually f in Trash) implies (always eventually 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 always no Protected & Trash & 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 always no File' & File & 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\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": "u6aCpYNnDrWJbyGB7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:49:14"} {"_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": "NNrToj8jxSPEX9jFE", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\tall 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\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\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 since f not in Trash\n}\n\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 after (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 \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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "3bZrhvT8nHKdQbaN7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:52:18"} {"_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": "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": "YyEEDNvazLyohQRJg", "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": "g8qkTZ3qKnwqeJtS9", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:39:15"} {"_id": "iW6ZLyKsjLmPuoQxW", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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\t\n \teventually some f:File | f in Trash releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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\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 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": "2tcW9wcANStzK5S5C", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 04:11:15"} {"_id": "uetRtQSR6poox3a3Q", "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\tonce(no 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 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\t always (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": "zfYzFF4RYQcS6j4DP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:52:46"} {"_id": "HRQ3byQsbDYudS9ut", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ZvNuugy8Pet36iqre", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:04:35"} {"_id": "P9v8rRXgjM5oKgQFg", "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}\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) since 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": "eyGu5DYCrnk58G2fJ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-1 11:55:55"} {"_id": "Zcgx3MHPpHtJ6Sowg", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n always (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 always(eventually File.link in Trash) \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some Trash and all f: File | once 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": "AMk9Gi8HbJuifA9Hk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:43:44"} {"_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": "ezWR3wj6Ht6txJK8N", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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\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 since f not in Trash\n}\n\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 after (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 | 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\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": "mgGzMJ6uyrvbZqWCB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:40:52"} {"_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": "89QCKgKjn9jBsgDqq", "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 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 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: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": "XXcEQcsZYK9NbuvmP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:22:50"} {"_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": "nAF7gb9dJb4ux29Wt", "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 after some File \n}\n\n// there is always some file 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": "GQbQyxLarysc73gH7", "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-12-1 11:39:43"} {"_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": "isQ7m9hMpQTkitfQC", "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 + 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 | eventually 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 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 always 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 always always Protected not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash\n eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "8MvyTfyXr9NHhy7SK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:07:57"} {"_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": "m97dHydjhETrCdTZm", "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 historically (once (no 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": "BSTdMGDp5CToT3QC7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:18:29"} {"_id": "tCeHLxuR6HPYzr9Wb", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\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": "ZHDNMEemhjSuMzxkr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 22:32:45"} {"_id": "QC8hRnKyEqKA49yNG", "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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t all f:File| some f.^link implies (eventually f+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": "J8gM5Cxvu6MYLN8tX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:35:02"} {"_id": "CMe5iyRiQJKYkcutv", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually (some f : File | f in Protected)\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n// the protected status never changes\npred prop10 {\n always all f : File {\n (f in Protected implies f in Protected)\n (f not in Protected implies f not in Protected)\n }\n \n \n}\n\n\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "SZHzpZKNTwudo4i5w", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:54:41"} {"_id": "xTYaHMPxQntzGM7W3", "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 historically(no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n (historically (no File)) releases (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": "rZWJX4BtMQh2Pz4zt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 11:39:31"} {"_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": "t6SuQJCuM7fPaWQq3", "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 | f not 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 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 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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "5whHnu2wSH4YH2z4J", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:47:13"} {"_id": "iwBBbjYm4WBZgeBpm", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : File | f not in File'\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\nalways all 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": "dHaWSKJjCJoLNcEzQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 22:51:03"} {"_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": "eedcwmHZDLuZ2zHBF", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all t:Trash | t in Trash releases t not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "wGtt6Ce2c4jnygQEy", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:14:38"} {"_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": "jcek6sh4FjHNpjDix", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways all p: Protected | always p not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n\t\n \talways all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f: (File - Protected) | after 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 | 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": "DPn5QZKWH9RWtZPpj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:38:30"} {"_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": "QoMsFjq5rhjLKyMEB", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 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": "sniDX6A6rZczDpPfk", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-13 13:37:40"} {"_id": "QdGJH4Sfug3GT7Y9X", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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 (Trash-Protected) = Trash\n}\n\n// the protected status never changes\npred prop10 {\n always Protected = Protected'\n\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\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n 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 always all f:File | (f in Protected & 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 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 always all f:File| f in Protected implies 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 always all f:Trash | 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": "x4WgY2TxTkgthCg6e", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-16 18:25:18"} {"_id": "MwbXe3WqbLnGucoYt", "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 (some f : 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\tall 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\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "kzvrdteBYQQq6jKdb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 20:27:18"} {"_id": "tGam2CchNBq52q4dj", "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\teventually (all t: File | File' = File - 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\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": "yctNbpdAYaMPxinjf", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-12 22:08:28"} {"_id": "xPNhiDWp3e73fqhiK", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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": "voZFJaZJDE7oDaQBv", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-13 13:47:02"} {"_id": "dCwqxpi9TR75sChjF", "cmd_c": true, "cmd_i": 12, "cmd_n": "prop13Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "TjNTP2jnxjZWKKgAt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:39:09"} {"_id": "eBeuxYcCJazdeB7pR", "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 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\talways no Trash & Protected\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\tall 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\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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall p : Protected | p in Trash triggered p not in Protected\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 p : Trash | p in Trash since p not in Protected\n}", "derivationOf": "MR88S5i8d48KYpivt", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-28 00:25:39"} {"_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": "WwKi5o7Pgof6owo6D", "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 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 \talways all f: Trash | once f in Trash implies 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\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// 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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 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 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\talways all p: Protected | eventually p in Trash implies 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 all f: Trash | f in Trash since f not in Protected\n\n}", "derivationOf": "mZQQxN9AQEY6pAzBB", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 09:17:10"} {"_id": "6sFWsGrZJkhRN2nDn", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 | eventually 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 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 eventually some f : File | eventually f.link 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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - 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 : 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 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 - Protected | before 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": "Jmzt8XJPqsXGMMsym", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:05:21"} {"_id": "jTRafMwmjmYZ3ds9m", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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\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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:26:54"} {"_id": "GmjNwWBrGCxsCHjPj", "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 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\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\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\t}\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 always no Protected & Trash & 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 always no File' & File & Trash \n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\tall f : Protected | always (eventually f in Trash => f not 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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-8 00:22:55"} {"_id": "CkAdkqNkn2sbgQxuc", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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\t\n \teventually some f:File | f in Trash releases 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 in File-Trash\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\talways all p:Protected | p in Trash implies after p 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\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\t all p:Protected | always p in File - Protected iff p'=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": "ZXmB8Q9qwwERJwvqZ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 04:18:43"} {"_id": "sBrkvxCFiCXpBWMBr", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 Protected' = File\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ES6Puggn4XshZgsBx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:48:29"} {"_id": "XXcEQcsZYK9NbuvmP", "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 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 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 | 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": "oJX3KPapvZJhuPhxL", "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": "2021-1-14 00:20:30"} {"_id": "fm2irvcdo6k33BvvD", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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\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}\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 (all f:File&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 since f not in 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\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": "KSDoGBcjFzNrdQmnL", "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-11-26 11:31:04"} {"_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": "BptaCGHbFo8wgZyYX", "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\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\teventually 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": "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": "2020-11-26 11:40:53"} {"_id": "Gt5bKjvFqkK5yuqjg", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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 always 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": "TJyP8oLyamikvj6Sm", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 17:49:34"} {"_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": "BWjZMMgPCKCQykWLR", "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 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\tsome f : Trash | f in File until always f not 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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "R3vRxo3AZ5pQoaz8n", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:14:28"} {"_id": "L837kEAQuTLuA2HnJ", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 f : File | f in Trash\n}\n\n\npred prop5 {\n\t\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 always f in Trash\n\n}\n\n// some file will be protected\npred prop7 {\n eventually some f : File | f in Protected\n\n}\n\n\npred prop8 {\n \n \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always all f : File | f in Protected implies f not in Trash\n\n}\n\n\npred prop10 {\n\n\n\n\n \n \n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f:File | f not in Protected implies after f in Protected\n\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 always 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": "84fLtjiGBovxa9dq7", "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-11-25 20:08:43"} {"_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": "TibRkeX2wRgaiPF2r", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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": "osRoavzckka83ezpK", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:17:47"} {"_id": "qbHJsZ3WM7ghFZdzC", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \talways (Protected since 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": "JP4e3RMuZtTroqyjp", "msg": "This must be a formula expression.\nInstead, it has the following possible type(s):\n{this/File}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 22:29:33"} {"_id": "7oqv8wwZvq5QeNzym", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File |always (eventually f in Trash) implies always after 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": "yuhRKaE8zyNt7Khme", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:04:44"} {"_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": "LXsGsdYAz6NqEQNCf", "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\n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\n}\n\n// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually 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": "jkQnTCn7fmuf9SsEc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 11:42:29"} {"_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": "ms9DjFcngeYHpJ9io", "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 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 \talways all f: Trash | once f in Trash implies 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\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 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\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\tonce 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\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 p: Protected | p in Trash implies after p not in Protected\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\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 after f not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\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\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\n}", "derivationOf": "gMkDxcpmRgNSshrwb", "msg": "The name \"f\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 22:37:34"} {"_id": "jFLj4XuLvrHcEwck8", "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\tall f:File | f in Protected until\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": "Br2ekJhjmzJd9GdXw", "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-12-11 01:50:05"} {"_id": "WKzs6TYHRGQSaffkb", "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 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\tall f : File | always (f in Trash and after 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": "JKCiWtgWQkuxTDmXk", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 23:26:09"} {"_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": "bCMk8kxyjm2QLspRg", "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\thistorically no (Trash+Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n\thistorically no 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 (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\talways (all f:File | f in Protected implies 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\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\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}", "derivationOf": "PJPaLoQR8egSish7s", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 13:46:52"} {"_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": "DzryaafRiTMJqMKdx", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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\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": "zKAYz8BCDmHKgNoSx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 23:30:43"} {"_id": "w75vJpsABExenhWog", "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 {\nno Trash\nno Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File\nafter some File\n}\n\n// there is always some file in the system\npred prop3 {\nalways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\neventually some f : File | f in Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\neventually some f : 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": "Ek4jwrNAqWxFPHtcb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 22:49:11"} {"_id": "rJuP5ptYSipRGiNjP", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 (Protected & Trash) implies (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": "YouvKmrL5bT6QQj4R", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:57:32"} {"_id": "nB3hQ5DJonjvFdXZB", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at no time 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\teventually (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": "ESXs8vH3Qn4GAYnSs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:18:18"} {"_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": "N2D8GsjwKbyoGq2ga", "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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n\t\n\t\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 after always f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 | p in Protected implies after 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": "zrfGtmEGQLXw9yyK6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-13 00:01:44"} {"_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": "dEmN6P4cKtRTpK7yN", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - 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": "i7QnMatbyGhGANB8N", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:33:31"} {"_id": "gGkaM4yyQxtmNrJu5", "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 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 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: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:File | f in Protected implies 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-Protected)| always 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": "bmB7FLnXd3bTjBBMu", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:29:45"} {"_id": "8v3kWrvKWdSSLt2T6", "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\tbefore { 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": "XJzBckq5nms3ynKLj", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 18:01:23"} {"_id": "5fuwzwmajggWewEQS", "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 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\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' = 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\t\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 always no Protected & Trash & 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 always no File' & File & 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\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": "g5cLdHu9CYacZGr8E", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-4 19:59:14"} {"_id": "uiKKXH8AxomXETDMe", "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\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 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": "Jr8Tf5w27xPjsaiaa", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-29 21:31:48"} {"_id": "oDCjaML78HH9kaRa4", "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\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\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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\t\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f : File | 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": "BAymGgHYXnBk4NENn", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 15:39:06"} {"_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": "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": "Gav26jB5FSx7yQSHZ", "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 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\tall f : File | always eventually f not in File + Protected + Trash\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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "vHy3K3ARdcMtZngZc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:20:34"} {"_id": "QGBogqszyyLv6faTZ", "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 {\nno Trash\nno 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": "2021-1-13 22:43:02"} {"_id": "Pcz5roRQF8JpL86sP", "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 all f : File | historically ((f not in (Trash+Protected)))\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n historically (no File) until 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 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 eventually (some f : File | f in 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": "hoMs8jhropDpTYcuF", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-25 19:27:08"} {"_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": "g79E6GYjHMzpcjsZS", "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": "QEWMA4CMv877XZRqH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:10:16"} {"_id": "GQo3riMa5ktBhgK9q", "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 : File | f in Trash implies 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\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\n\n\npred prop13 {\n\talways (all f : File | f in Trash implies once f not in Trash)\t\n}\n\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 : File | 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\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\t\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "by6kxfzdojcoJYPx7", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:47:31"} {"_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": "Rmf2mXxjtEtwQJACT", "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 + 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 | no Trash and eventually f in Trash \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n all t: Trash | t in Trash triggered 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": "J9ZWnfFcJ6HNg5YkS", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:00:42"} {"_id": "PiScAnPFphogrC5Rt", "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\talways (all 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\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 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 p:Protected | no p&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-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\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&Protected | 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 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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways(all p:Protected | after 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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\t\n}", "derivationOf": "JQm3HzKQi7tp8Ay25", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:13:06"} {"_id": "ncLni3a9cCcizng5Y", "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\n \tsome 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 \tsome f: File | eventually f in Trash\n\n}\n\n\npred prop5 {\n \tsome f: File | eventually always 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\tsome f: File | always (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 all f: File | once f in Protected implies always f not in Trash\n}\n\n// the protected status never changes\npred prop10 {\n \tall f: File | f in Protected since f in Protected\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n all f: File | always (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 all f: File |always f in Trash\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\tall f: File | eventually f in Trash implies once f not in 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\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\tall f: File | always once 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 all f: File | always (File' = File - f since f in Trash)\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "ygJ7FHSpmBvfQkEfs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 23:20:11"} {"_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": "fy7HkxFMsK3asutX2", "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\npred prop2 {\n\t\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\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\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 always f in Trash\n \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// the protected status never changes\npred prop10 {\n\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "wQs7wPqo6uMy8gxkx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-16 18:06:54"} {"_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": "5fddLLrSqEH8FrKm8", "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 + 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 | eventually 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 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 always no Protected & Trash funciona, nao devia\n always all p: Protected | always p not in Trash devia funcionar\n}\n \n the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n \n every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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\u00e3o percebo\n always all f : File | eventually f in Trash implies eventually f not in Trash\n}\n \n if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in Trash nao precisa do always antes?\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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n \n protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t : Trash | t in Trash since t not in Protected\n}", "derivationOf": "JhTLennjpWqJzpjXx", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:33:49"} {"_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": "fYtAhvxWr3xptMCzx", "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 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 \talways all f: Trash | once f in Trash implies 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}\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\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\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n\n}\n\n// whenever a protected file is in the trash, in the succeeding state it no longer is protected\npred prop14 {\n\n}\n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "RzBeQ8hrsf7Jk9ydT", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 21:42:27"} {"_id": "JxEPFuukzdaSr3Yp7", "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}\n\nvar sig Trash in File {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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 \n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways (some Trash implies (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\talways all l : link | eventually File.l in Trash\n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "2qSHcnkH5jGCHG3mP", "msg": "Analysis cannot be performed since it requires higher-order quantification that could not be skolemized.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-26 13:35:34"} {"_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": "R4jw6C2oQyngG9cyz", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 Protected' =Protected + (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": "sBrkvxCFiCXpBWMBr", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 18:49:15"} {"_id": "LjuLKAY3DKAs2qzmn", "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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - Protected | after f in Protected\n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n always all f: File | eventually f in Trash and f in Trash releases f not in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "2zj8uL52gvFbQSKM4", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 01:16:26"} {"_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": "SWLmK63wSB5Ea5Qbn", "cmd_c": true, "cmd_i": 18, "cmd_n": "prop19Ok", "code": "var sig File {\n\tvar link : lone File\n}\nvar sig 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 + 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 | eventually 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 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 always 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 always no Protected & Trash \n \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and (always 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | after 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 always 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 always all t: Trash | t in Trash since t not in Protected\n}", "derivationOf": "5rAdA6oReyfPuT3k5", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 08:39:31"} {"_id": "kcK8t4sDD6yELrzNe", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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\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 (some (File - Protected) implies ((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\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 & Trash | 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 (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 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}", "derivationOf": "46mR29q6b2TDEmqHW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 13:46:10"} {"_id": "JreKADxaojNa4fYjf", "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 (some f : File | f not 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 => always f in 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\talways 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\t\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": "wgt6PXEdMguGF4F5F", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 20:33:12"} {"_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": "eM5u3xpvfgmLso4x8", "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\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\talways all l : link.File | eventually l in Trash\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 - Protected | 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 | 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\tall t : Trash | once t not in 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": "8a8PF6WyJeXTJSskH", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-29 21:51:45"} {"_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": "ZbwdPPfG35oKYcDAz", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - 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 : 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 always all f : File | eventually f in Trash\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n 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": "kXxC6KjnxohbCMB87", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 23:57:33"} {"_id": "gofHiGLBXivMemTXL", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File until one 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": "PcZzh35TDYtucLKWw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:31:08"} {"_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": "59jRL2ccHYo6kL4JG", "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 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": "uoos8TcvvoH52ndrd", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 11:36:00"} {"_id": "pkNJSw8fkdoCMbRn4", "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\tonce(no 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 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": "h7RzkcdyycPGz6hk6", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-14 00:50:27"} {"_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": "wxsmzewpue6cbqzfx", "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 \t\n \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\t\n \tsome f: File | f not in Trash implies after f in Trash\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\n\t\n \talways (some File.link implies eventually File.link in Trash)\t\n \t\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 \talways all p: Protected | historically p in Protected and 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": "2DDyPzTn2fYrBJr84", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:25:22"} {"_id": "mDrfmrWQLsjiYH94M", "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": "9jPK8KBWzjFmBx4Hb", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-14 00:11:20"} {"_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": "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": "PqB94uqkLuMmmyfR8", "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 (some f : File | f not 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 => always f in 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\talways 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\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 - Protected | 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\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 & Protected | 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 => 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 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": "dMPT4v8cpSoChwfre", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-2 21:01:13"} {"_id": "BMbrSeudN5FfMzwTe", "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 + 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 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": "WnM7d5xxshkwiAuJX", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 22:32:57"} {"_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": "Lw46Ghy7bchmFnEWZ", "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\t\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\t\n}\n\n// whenever a file is sent to the trash, it remains in there forever\npred prop6 {\n\talways(all f : (File & 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 a : File - (File & Protected) | after (a 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&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 & Protected) | after no(f & 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": "BBrjj5pxt98ETW2Ne", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2021-1-13 13:53:25"} {"_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": "utfK3deDyvYnPtKaZ", "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": "2020-11-26 11:38:06"} {"_id": "oFr2oL7zB8jk5dHBX", "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 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\tall f : File | f not in Trash and f in 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' = 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": "uz9nuLbhu8Srqi2q6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-2 22:35:43"} {"_id": "zyMmXacGry8bijrMb", "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 until 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": "mDrfmrWQLsjiYH94M", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-14 00:11:44"} {"_id": "JGbrXPZiFje4GCgEf", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\talways( Protected' = Protected)\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\t eventually (some f:File | 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\tall f:File | f in Trash since f not in Trash\n}\n\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 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:File | 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\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": "BriQdbkbQQssbr5x3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 15:15:33"} {"_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": "CLcEMYjpzCEcYFLFu", "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}\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\talways some File\n}\n\n// some file will eventually be sent to the trash\npred prop4 {\n\t\n \teventually some Trash\n}\n\n// some file will eventually be deleted\npred prop5 {\n \t\n\t\n\t\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 after f in Trash\n}\t\n\n// some file will be protected\npred prop7 {\n\t\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 \t\n\t\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n\talways all f:File | f in File-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 releases 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 p:Protected | p in Trash implies after p 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\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\t\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\talways all p:Protected | until p 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": "K2EHd4nZbyvdD49h9", "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-12-14 00:14:35"} {"_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": "heshEYcTpb87NXn7i", "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(some File) since (no File)\n}\n\n// there is always some file in the system\npred prop3 {\n\talways (some File)\n}\n\n// some file will 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": "f5H4yWQDdtj9djwax", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 11:46:33"} {"_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": "Q37RBHECSPCZftF4s", "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 no Trash and no Protected\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n \n no File implies no File in Trash\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": "uCK5xTfbs8NDgXGpM", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-11-5 01:42:56"} {"_id": "9NWktp8Sst93kmw7P", "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 {}\n\nvar sig Protected in File {}\n\n// initially the trash is empty and there are no protected file\npred prop1 {\n\thistorically no (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\talways some File\n}\n\n// some file will 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\talways (some Trash implies (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 \n}\n\n// a protected file is at 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\talways (some (File - Protected) implies ((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": "fjt7vJHJSoHG29woQ", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-26 12:26:29"} {"_id": "kXxC6KjnxohbCMB87", "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 once (no Trash + Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n no File 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 always (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 some f : File | eventually f.link + link.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 p : Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f : File - Protected | after f in Protected \n}\n\n// a file will eventually be sent to the trash and remain there indefinitely\npred prop12 {\n eventually some t : Trash | after t in Trash\n}\n\n// if a file is ever in the trash, it was once outside\npred prop13 {\n all t : Trash | once t in File - 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 : 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 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": "2p9LBjyngMR9QjdZw", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-23 23:56:48"} {"_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": "grEBkfgRPQTjYqHd2", "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\tonce(no 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 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\t always (all f:Trash | 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\t\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways (all f:Protecteed | 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": "9SRJbeKooCFdRHtBq", "msg": "The name \"Protecteed\" cannot be found.", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2021-1-14 00:56:33"} {"_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": "Jw9QakZYEJJPws543", "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}\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\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\tonce Protected implies always 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": "4qXYPsHmu9XRpCQ33", "msg": "This expression failed to be typechecked line 59, column 2, filename=/tmp/alloy_heredoc11684445271067848108.als", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 12:18:31"} {"_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": "FrxbBrBvouFuzqKse", "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}\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\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\tall f: File | eventually f in Protected implies 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": "ZS8a7hW67yFhrr4cc", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-1 12:19:48"} {"_id": "MqSEpzLwoJHrxuM3q", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually 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": "Gt5bKjvFqkK5yuqjg", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-11-24 17:56:36"} {"_id": "92kokaqnARbjoPL2S", "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 \t\n \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 \tsome 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": "F7mM559MbXorxX5SY", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-23 22:48:29"} {"_id": "vHTQF4GMbS9srMH4Y", "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 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\n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n\talways no Protected & Trash \n}\n\n// the protected 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\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\t\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' implies after f not in Protected \n\n// anytime a file exists, it will eventually be sent to the trash\npred prop15 {\n\n}\n\n// if a file is protected, it has always been so\npred prop16 {\n\n}\n\n// when a file is sent to the trash, it is deleted in the succeeding state\npred prop17 {\n\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n\n}\n\n// all protected files will be sent to the trash but remain protected until then\npred prop19 {\n\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "fCSjsPNZX79xxQLAK", "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-11-25 15:32:19"} {"_id": "3DRTHxPb4gjKJEY35", "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 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 | eventually f not 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\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// 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 always no Protected & Trash & 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 always no File' & File & 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\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": "7KbijQrae8FEPxGd6", "original": "9jPK8KBWzjFmBx4Hb", "sat": 0, "time": "2020-12-8 00:56:57"} {"_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": "DjFjw6s6go6dHYM8w", "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 historically(no Trash and no Protected)\n}\n\n// initially there are no files, but some are immediately created\npred prop2 {\n eventually (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": "D4BBTgJJCNkewxSRs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-19 11:36:15"} {"_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": "7hA5c3cAeZHcTDzxB", "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\tonce (no 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 f:File | f in Trash)\n}\n\n// some file will eventually be deleted\npred prop5 {\n eventually(some f:File | f in File implies eventually f not 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 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( all f:File | f in Protected implies f not in Trash)\n}\n\n// the protected status never changes\npred prop10 {\n\t\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\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 since f not in Trash\n}\n\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 after (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 | 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\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\t\n}\n\n// whenever a file is in the trash, it has been so since it was deprotected\npred prop20 {\n\n}", "derivationOf": "dpyRbAo3Yjcjb9MQs", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-26 14:44:05"} {"_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": "9GoWeuRktMZHeGbgK", "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 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 \talways all f: Trash | once f in Trash implies 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 always l: File.link | eventually l 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\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\tonce 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": "3xojvgTDQpXqP7Evu", "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-12-1 21:44:39"} {"_id": "7MEWsRCR2QHykYucm", "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 + 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 | eventually 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 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 always eventually File.link in Trash \n}\n\n// a protected file is at no time sent to the trash\npred prop9 {\n always no Protected & Trash \n always all p: Protected | always p not in Trash \n}\n\n// the protected status never changes\npred prop10 {\n always all p: Protected | historically p in Protected and always p in Protected\n}\n\n// every unprotected file becomes protected in the succeeding state\npred prop11 {\n always all f: File - 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 eventually some Trash and 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 all t: Trash | once t not in 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 t: Trash & Protected | after t not in 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 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 always all t: Trash | after t not in File\n}\n\n// protected files will only be deprotected if sent to the trash\npred prop18 {\n always all p: Protected | eventually 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}", "derivationOf": "avpkg9NyMHqmwpLQE", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-24 00:11:14"} {"_id": "MB5ohMeY8Q8yEBjDQ", "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\tsome f: File | eventually no f 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": "4QuTJ9ipLkrcca6EZ", "msg": "This must be a set or relation.\nInstead, it has the following possible type(s):\n{PrimitiveBoolean}", "original": "9jPK8KBWzjFmBx4Hb", "sat": -1, "time": "2020-12-1 11:42:59"} {"_id": "seQtpB9dWTCAfmxSo", "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\n// initially there are no files, but some are immediately created\npred prop2 {\n\tno File after some File\n}\n\n// there is always some file in the system\npred prop3 {\n\talways some File\n}\n\n// some file will 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 all f:File | f in Trash implies after 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\t\n}\n\n// the protected 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 File-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 releases always f'=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": "NJgA46eX6jHTzK3TW", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2021-1-8 03:43:38"} {"_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": "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": "A6ihzdLKKEG8mKHDn", "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 historically (no Trash and no Protected)\n\t\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 \talways (all f:Trash | after f in Trash)\n}\n\n// some file will be protected\npred prop7 {\n\t eventually some Protected \n}\n\n// whenever a link exists, it will eventually be in the trash\npred prop8 {\n\t\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 (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\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 (Protected & Trash) implies no (Protected' & (Protected & 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": "rJuP5ptYSipRGiNjP", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-11-25 19:57:53"} {"_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": "GSEWDH6ou9Lur3pNE", "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 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\talways eventually #File' < #File || #File' = #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\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\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 always no Protected & Trash & 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 always no File' & File & Trash \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\talways all f : Trash | f in Trash since f not in Protected\n}", "derivationOf": "FbKvPqPgQ5g46u5y3", "original": "9jPK8KBWzjFmBx4Hb", "sat": 1, "time": "2020-12-5 15:18:08"} {"_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 prote