r      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqA(c) Iago Abal, 2012-2014 (c) David Castro, 2012-2013BSD3TIago Abal <mail@iagoabal.eu>, David Castro <david.castro.dcp@gmail.com>Safe 9:;<=C Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga015148ad21a032e79a496629651dedb8 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4cd6ad05aba48f4b679f0c13310ed2a4 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaa9f9e7b1b5b81381fab96debbaaa638f Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga0112dc1e8e08a19bf7a4299bb09a9727 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga49f047b93b0282e686956678da5b86b1 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga311274c8a65a5d25cf715ebdf0c68747 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga3a65ded0ada3ee285865759a21140eeb Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga6c2de6ea89b244e37c3ffb17a9ea2a89) Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga45fcd18a00379b13a536c5b6117190ae* Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gae0aba52b5738b2ea78e0d6ad67ef1f92+ Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf06357c49299efb8a0bdaeb3bc96c6d6, Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga41cf70319c4802ab7301dd168d6f5e45- Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gadaa12e9990f37b0c1e2bf1dd502dbf39. Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga8ac771e68b28d2c86f40aa84889b3807/ Referece Vhttp://z3prover.github.io/api/html/group__capi.html#ga96b11da43464071c4ec35418d1cc34830 Referece Vhttp://z3prover.github.io/api/html/group__capi.html#ga6168be4babb03fbbccff1fa7df4513001 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga74e6e5107c4143be3929e80bdaf73d6d2 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf93844a5964ad8dee609fac3470d86e43 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga15243dcad77f5571e28e8aa1da4656754 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf90c72f63eab298e1dd750f6a26fb9455 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga51b048ddbbcd88708e7aa4fe1c2462d66 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gab1aa4b78298fe00b3167bf7bfd88aea37 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga20d66dac19b6d6a06537843d0e25f7618 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf52e41db4b12a84188b80255454d3abb9 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaed5d19000004b43dd75e487682e91b55: Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gabb4f8ed6a09873f5aeefe9cc01010864; Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf14a54d904a7e45eecc00c5fb8a9d5c9< Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga45b40829aaa382bbf427a744911452f9= Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga000e369de7b71caa4ee701089709c526> Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf46fb6f3aa3ef451d6be01a737697810? Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga72afadf5e8b216f2c6ae675e872b8be4@ Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4a4a215b9130d7980e3c393fe857335fA Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gafd4b4a6465601835341b477b75725b28B Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga40aa98e15aceffa5be3afad2e065478aC Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gae41bebe15b1b1105f9abb8690188d1e2D Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga2362dcef4e9b8ede41298a50428902ffE Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga388e25a8b477abbd49f08c6c29dfa12dF Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga887441b3468a1bc605bbf564ddebf2aeG Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga047bb9dff9d57c7d3a71b7af4555956bH Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga54244cfc9d9cd2ca8f08c3909d700628I Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga5735499ef0b46846c5d45982eaa0e74cJ Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga5735499ef0b46846c5d45982eaa0e74cK Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gaec43d4d20ed7e7bf4c7a57d37dc3bfc6L Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga5badc99b0a1e154ef3cef17ff35fd021M Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga3052a11993ce35250f108c365bc09ff7N Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gad65f4f9f7035b6eef161ee93bb694e52O Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga63a581c33213fb14efe9e6175c74546bP Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga631394a36c83a1e0db7825fe92d8aebeQ Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gac4f8342eed2de1c1caaa2fbf492439a9R Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga5ab8e77bdbfecc6f8845734cd7a729f7S Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gac0fa60e39840a704f201ced90cde0ef9T Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga1f182e7ef80015e8f2dcde219371aedcU Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gac9e9da38d6a9acff293bc22bf0cf1a20V Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga8feaef3d36dcb136fa7812a8c10cf178W Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gabd0874d8777b3bc426782a87c04206b9X Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gac0670bd04fa76af71b2abbc2f8b62889Y Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gab940c1401643ece97517ff27838313c4Z Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gad9964357958dd12ab20f0b315ddc219b[ Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gaf53dac8f6c9b615cd21b9a2eeb006005\ Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gaa4b9d53ba194d2d3a8bb2f55bec7e78e] Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga2a8ee59130e23e10568a1f70e387c608^ Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gad45c5746cd1eefe4f2fc6df956c9cd8e_ Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gadf50d7093abe5a892593baef552bbf89` Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga2bf6a92d53d65fc32163792bedd5d31fa Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf62f6b456349886273e15d3cfe8656feb Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gad4417737993c62d39a6624118427f506c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga1fd3d3fe7bc4426c4787c3cc8cf92864d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga0d5e342cd83ed43185bcfdc583513959e Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga624e692e180a8b2f617156b1e1ae9722f Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gac2e899a4906b6133a23fdb60ef992ec9g Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga11498ce4b25d294f5f89ab7ac1b74c62h Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4974397cb652c7f7f479012eb465e250i Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga39e3df967eaad45b343256d56c54e91cj Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gae4df28ba713b81ee99abd929e32484eak Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga3a91c9f749b89e1dcf1493177d395d0cl Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gac7f883536538ab0ad234fde58988e673m Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf36d49862a8c0d20dd5e6508eef5f8afn Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gab3c5c7eadcfd209eec72ec0ac0ad2e96o Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga6fe03fe3c824fceb52766a4d8c2cbeabp Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga51aed8c5bc4b1f53f0c371312de3ce1aq Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga9fd65e2ab039aa8e40608c2ecf7084dar Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga9a9a2a75d7fc3d842839662e53365903s Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga82cd36e7b02c432436950d5c2301245et Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaca22cbdb6f7787aaae5d814f2ab383d8u Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga46de7559826ba71b8488d727cba1fb64v Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf157e1e1cd8c0cfe6a21be6370f659daw Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga2bab9ae1444940e7593729beec279844x Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gabe3aefc84db4fc3ce5349e958f1ec34by Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga80218e1d50bdc4dac5ba18bd13a8ddfbz Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga73b1de0ec17bb4f2e47d256a7628925c{ Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga1f30176bce864257bebb1fb30a103779| Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga7d9262dc6e79f2aeb23fd4a383589dda} Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4674da67d226bfb16861829b9f129cfa~ Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga2a1a4524289574ae34ce2eecdade84d7 Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga8e70ac56fe6748301b7776191395184a Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gaab062a06c0789b432885f4813dd9633b Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga3ff26c1c0f55d17ebf2c152a74eac743 Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga3c7f8f6ce7c9f30710d3b73fa091f6b3 Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gaf5e9adb229e98b29cbeb7cebf41433a3 Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga01bc2993f3eb358f7bd3b2d2d4cf5e51 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga86670c291a16640b932e7892176a9d1b Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gacc2df0767d4a94d7216d3db49c41547f Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gac06a904e7ac6209d8019c606412d3cec Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gab0e22d719f55f93fb8788fa4534cc342 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaea0024e05e6f82434ff31e6ec6fab432 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga3a90216036017ce16db63fb3aa5f6047 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga99d6a99e914fcb11e5dcf9fcc3584425 Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gad6e8afe205259b3d924f460d22665e90 Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga94b1bdd4d3351afc860f6cbd2a2ada9f Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gae9a7280ad96d05c8266aad869efb9b25 Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga3e6914c9186de8e588da66af78aa271f Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gac85bd38ea5c41ec9e0e956a8a1734a7d Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga7b68758cbe05352eca541e4028f9a8d8 Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga6b2c35b148f0bb05e9ebf8ab17c2b16e Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gad48dd00ca5ebce768c66dca447f50037 Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga3e5cb3bd6e9b9de0d6e6a6e80eb36bba Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gaa5820368b5ae944bd17f10c2f8247c11 Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gac47b42af13aee024d34bb37ffaa0ad75 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga34329d4c83ca8c98e18b2884b679008c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gada433553406475e5dd6a494ea957844c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gafe4334258b639fa1f8754375b9b56fd7 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf9345fd0822d7e9928dd4ab14a09765b Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga913ecf28cd4bddc8255f77f80b6aafe9 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gad025402a9cac1a8d8facddba3f8cbddc Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga203f32e3b904955f703f61f91a8626a4 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga94617ef18fa7157e1a3f85db625d2f4b Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga133aaa1ec31af9b570ed7627a3c8c5a4 Reference: Whttps://z3prover.github.io/api/html/group__capi.html#gaa6f84f1b2b178f6fe5bc3b9a5762a73b Reference: Whttps://z3prover.github.io/api/html/group__capi.html#ga6ffa46d55e4632d761db4dfae7441c09 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga0a4dac7e9397ff067136354cd33cb933 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gae259256eb0f2c10e48fc6227760b7fda Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga8fc3550edace7bc046e16d1f96ddb419 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga87a4f9add28db792a24476a1082b4fe4 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4c43608feea4cae363ef9c520c239a5c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gadc82da786f3b558de8ded05bf6478902 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga2011bea0f4445d58ec4d7cefe4499ceb Reference Vhttp://z3prover.github.io/api/html/group__capi.html#gabdb40b3ac220bce5a3801e6d29fb3bb6 Referece: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4ffce34ff9117e6243283f11d87c1407 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga7e975b7d7ac96de1db73d8f71166c663 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga1d4da8849fca699b345322f8ee1fa31e Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf15c95b66dc3b0af735774ee401a6f85 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga88a165138162a8bac401672f0a1b7891 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga42cc319787d485d9cb665d80e02d206f Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga7201b6231b61421c005457206760a121 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga8779204998136569c3e166c34cfd3e2c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gabe0bbc1e01a084a75506a62e5e6900b3 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gac8aca397e32ca33618d8024bff32948c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga139c5803af0e86464adc7cedc53e7f3a Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gac6e516f3dce0bdd41095c6d6daf56063 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga5c57143c9229cdf730c5103ff696590f Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gabb49c62f70b8198362e1a29ba6d8bde1 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga8a8abff0ebe6aeeaa6c919eaa013049d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4050162a13d539b8913200963bb4743c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga80e883f39dd3b88f9d0745c8a5b91d1d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga856c3d0e28ce720f53912c2bbdd76175 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga5e92662c657374f7332aa32ce4503dd2 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga358b6b80509a567148f1c0ca9252118c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga78e89cca82f0ab4d5f4e662e5e5fba7d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga9150242d9430a8c3d55d2ca3b9a4362d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga84ea6f0c32b99c70033feaa8f00e8f2d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gae305a4f54b4a64f7e5973ae6ccb13593 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga38f423f3683379e7f597a7fe59eccb67 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga501ccc01d737aad3ede5699741717fda Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga86f4415719d295a2f6845c70b3aaa1df Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gae9c5d72605ddcd0e76657341eaccb6c7 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaa17e7b2c33dfe2abbd74d390927ae83e Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga6480850f9fa01e14aea936c88ff184c4 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga785f8127b87e0b42130e6d8f52167d7c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga1e2b1927cf4e50000c1600d47a152947 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga88f6b5ec876f05e0d7ba51e96c4b077f Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gac87b227dc3821d57258d7f53a28323d4 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga35f89eb05df43fbd9cce7200cc1f30b5 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gabb227526c592b523879083f12aab281f Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaf46f1cb80e5a56044591a76e7c89e5e7 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga3b94e1bf87ecd1a1858af8ebc1da4a1c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4932b7d08fea079dd903cd857a52dcda Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga674b580ad605ba1c2c9f9d3748be87c4 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gac59645a6edadad79a201f417e4e0c512 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gac8d5e776c786c1172fa0d7dfede454e1 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga03e81721502ea225c264d1f556c9119d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gac9322fae11365a78640baf9078c428b3 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gad29099270b36d0680bb54b560353c10e Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga32d2fe7563f3e6b114c1b97b205d4317 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gae774128fa5e9ff7458a36bd10e6ca0fa Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4e93a985aa2a7812c7c11a2c65d7c5f0 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga063ab9f16246c99e5c1c893613927ee3 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaeec3414c0e8a90a6aa5a23af36bf6dc5 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gade58fbfcf61b67bf8c4a441490d3c4df Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gab7c026feb93e7d2eab180e96f1e6255d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gab738b89de0410e70c089d3ac9e696e87 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga8ce08af4ed1fbdf08d4d6e63d171663a Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga5774b22e93abcaf9b594672af6c7c3c4 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga95dac8e6eecb50f63cb82038560e0879 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga46c18a3042fca174fe659d3185693db1 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga5df4298ec835e43ddc9e3e0bae690c8d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gad240fedb2fda1c1005b8e9d3c7f3d5a0 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga56ce0cd61666c6f8cf5777286f590544 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga6abd3dde2a1ceff1704cf7221a72258c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga688c9aa1347888c7a51be4e46c19178e Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga819814e33573f3f9948b32fdc5311158 Reference: < Vhttp://z3prover.github.io/api/html/group__capi.html#ga0c78be00c03eda4ed6a983224ed5c7b7 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga784f5ca36a4b03b93c67242cc94b21d6 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gabf15059e9e8a2eafe4929fdfd259aadb Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga96dc37d36efd658fff5b2b4df49b0e61 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga0a3821ea00b1c762205f73e4bc29e7d8 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga77a6ae233fb3371d187c6d559b2843f5 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gab96e0ea55334cbcd5a0e79323b57615d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gafd18e127c0586abf47ad9cd96895f7d2 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaccc04f2b58903279b1b3be589b00a7d8 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga36cf75c92c54c1ca633a230344f23080 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaac2ad0fb04e4900fdb4add438d137ad3 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga759b6563ba1204aae55289009a3fdc6d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga7130641e614c7ebafd28ae16a7681a21 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gad9245cbadb80b192323d01a8360fb942 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga46167b86067586bb742c0557d7babfd3 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaa9a33d11096841f4e8c407f1578bc0bf Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga58a3dc67c5de52cf599c346803ba1534 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga2fcdb17f9039bbdaddf8a30d037bd9ff Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga8e350ac77e6b8fe805f57efe196e7713 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga1ac60ee8307af8d0b900375914194ff3 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gadcd2929ad732937e25f34277ce4988ea Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4f5fea9b683f9e674fd8f14d676cc9a9  Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gab9affbf8401a18eea474b59ad4adc890  Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4e4ac0a4e53eee0b4b0ef159ed7d0cd5  Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga00866d16331d505620a6c515302021f9  Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gacde98ce4a8ed1dde50b9669db4838c61  Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gacc6d1b848032dec0c4617b594d4229ec Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gac829c0e25bbbd30343bf073f7b524517 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga930a8e844d345fbebc498ac43a696042 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga94417eed5c36e1ad48bcfc8ad6e83547 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga3329538091996eb7b3dc677760a61072 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaa076d3a668e0ec97d61744403153ecf7 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga95a19ce675b70e22bb0401f7137af37c Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga5952ac17671117a02001fed6575c778d Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gae898e7380409bbc57b56cc5205ef1db7 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga093c9703393f33ae282ec5e8729354ef Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga33a202d86bf628bfab9b6f437536cebe Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaa5c5e2602a44d5f1373f077434859ca2 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga6865879523e7e882d7e50a2d8445ac8b Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gac9305d5d4eb1ce68d17300f5af19fafd Reference Vhttp://z3prover.github.io/api/html/group__capi.html#gaa7a2e823e23fdfba407ea5088c8d1709 Reference Vhttp://z3prover.github.io/api/html/group__capi.html#gac9305d5d4eb1ce68d17300f5af19fafd Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gab6809d53327d807da9158abdf75df387  Reference Vhttp://z3prover.github.io/api/html/group__capi.html#ga63816efdbce93734c72f395b6a6a9e35! Reference Vhttp://z3prover.github.io/api/html/group__capi.html#gaa779e39f7050b9d51857887954b5f9b0" Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga7156b9c0a76a28fae46c81f8e3cdf0f1# Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gafe617994cce1b516f46128e448c84445$ Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gaeed000a1bbb84b6ca6fdaac6cf0c1688% Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga40ef93b9738485caed6dc84631c3c1a0& Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga6cd426ab5748653b77d389fd3eac1015' Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gacdc73510b69a010b71793d429015f342( Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga736e88741af1c178cbebf94c49aa42de) Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga57c27f2c4e9eccf17072a84c6cecb1db* Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gafebb0d3c212927cf7834c3a20a84ecae+ Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga3df806baf6124df3e63a58cf23e12411, Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga9cd52225142c085630495044acc68bd2- Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga4a11514494fbf3467b89f0a80ac81e7a. Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga556eae80ed43ab13e1e7dc3b38c35200/ Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga98acd59d946eceb4f261bc50489216ee0 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga001ade87a1671fe77d7e53ed0f4f1ec31 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga5e620acf5d55d0271097c9bb972197742 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga7d6c40d9b79fe8a8851cc8540970787f6 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gad86c8730a2e4e61bac585b240a6288d47 Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#ga1d9cee57472b2c7623642f123b8f1781[  !"#$%&'()*+,-./012namelogicstatus attributes assumptions# assumptionsformula3456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~arrayindexvalue to store at array[index]arayindex      !"#domainrange$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[  3456789:;<=>?@ABCHDIEJFKGLMNOPQRSTUVWXYZ210/.-,+*)('&%$#"!      ~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"! Y  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZA(c) Iago Abal, 2012-2015 (c) David Castro, 2012-2015BSD3TIago Abal <mail@iagoabal.eu>, David Castro <david.castro.dcp@gmail.com>None 09:;<=IM]Solvers available in Z3.These are described at &http://smtlib.cs.uiowa.edu/logics.html^Closed formulas over the theory of linear integer arithmetic and arrays extended with free sort and function symbols but restricted to arrays with integer indices and values._Closed linear formulas with free sort and function symbols over one- and two-dimentional arrays of integer index and real value.`|Closed formulas with free function and predicate symbols over a theory of arrays of arrays of integer index and real value.a1Closed linear formulas in linear real arithmetic.bTClosed quantifier-free formulas over the theory of bitvectors and bitvector arrays.cClosed quantifier-free formulas over the theory of bitvectors and bitvector arrays extended with free sort and function symbols.dwClosed quantifier-free linear formulas over the theory of integer arrays extended with free sort and function symbols.eOClosed quantifier-free formulas over the theory of arrays with extensionality.fJClosed quantifier-free formulas over the theory of fixed-size bitvectors.gDifference Logic over the integers. In essence, Boolean combinations of inequations of the form x - y < b where x and y are integer variables and b is an integer constant.hUnquantified linear integer arithmetic. In essence, Boolean combinations of inequations between linear polynomials over integer variables.iUnquantified linear real arithmetic. In essence, Boolean combinations of inequations between linear polynomials over real variables.j#Quantifier-free integer arithmetic.k Quantifier-free real arithmetic.lDifference Logic over the reals. In essence, Boolean combinations of inequations of the form x - y < b where x and y are real variables and b is a rational constant.mfUnquantified formulas built over a signature of uninterpreted (i.e., free) sort and function symbols.nTUnquantified formulas over bitvectors with uninterpreted sort function and symbols.obDifference Logic over the integers (in essence) but with uninterpreted sort and function symbols.pUUnquantified linear integer arithmetic with uninterpreted sort and function symbols.qRUnquantified linear real arithmetic with uninterpreted sort and function symbols.rVUnquantified non-linear real arithmetic with uninterpreted sort and function symbols.sELinear real arithmetic with uninterpreted sort and function symbols.tLNon-linear integer arithmetic with uninterpreted sort and function symbols.u"Interpolation problem formulation.Z3 error codes.Z3 exceptions.#Z3 errors are re-thrown as Haskell  exceptions, see .\Pretty-printing mode for converting ASTs to strings. The mode can be one of the following:?Z3_PRINT_SMTLIB_FULL: Print AST nodes in SMTLIB verbose format.=Z3_PRINT_LOW_LEVEL: Print AST nodes using a low-level format.KZ3_PRINT_SMTLIB_COMPLIANT: Print AST nodes in SMTLIB 1.x compliant format.LZ3_PRINT_SMTLIB2_COMPLIANT: Print AST nodes in SMTLIB 2.x compliant format.!The interpretation of a function.!Mapping from arguments to values.Default value.#Type of an evaluation function for .!Evaluation may fail (i.e. return r) for a few reasons, see . Different kinds of Z3 AST nodes.Different kinds of Z3 types.!Result of a satisfiability check.This corresponds to the z3_lbool type in the C API.A Z3 solver engine.QA(n) (incremental) solver, possibly specialized by a particular tactic or logic.A Z3 parameter set.vStarting at Z3 4.0, parameter sets are used to configure many components such as: simplifiers, tactics, solvers, etc.A result of applying a tacticA goal (aka problem)A tactic!Representation of the value of a  at a particular point.+An interpretation of a function in a model.>A model for the constraints asserted into the logical context.s5A list of type contructors for (recursive) datatypes.-A type contructor for a (recursive) datatype.YA kind of AST representing pattern and multi-patterns to guide quantifier instantiation.>A kind of AST representing constant and function declarations.,A kind of AST representing function symbols.A kind of AST representing types.A Z3 AST node.MThis is the data-structure used in Z3 to represent terms, formulas and types.A Z3 symbol.,Used to name types, constants and functions.A Z3 logical context.A Z3 configuration object.Create a configuration.See .Delete a configuration.See .Set a configuration parameter.;Run a computation using a temporally created configuration.^Note that the configuration object can be thrown away once it has been used to create the Z3 ./Create a context using the given configuration.Z3_del_context> is called by Haskell's garbage collector before freeing the  object."Create a Z3 (empty) parameter set.vStarting at Z3 4.0, parameter sets are used to configure many components such as: simplifiers, tactics, solvers, etc.Add a Boolean parameter k with value v to the parameter set p.Add a unsigned parameter k with value v to the parameter set p.Add a double parameter k with value v to the parameter set p.Add a symbol parameter k with value v to the parameter set p.&Convert a parameter set into a string.JThis function is mainly used for printing the contents of a parameter set.$Create a Z3 symbol using an integer.mkIntSymbol c i requires  0 <= i < 2^30Create a Z3 symbol using a t.ACreate a free (uninterpreted) type using the given name (symbol).BTwo free types are considered the same iff the have the same name. Create the boolean type.CThis type is used to create propositional variables and predicates. Create the integer type.oThis is the type of arbitrary precision integers. A machine integer can be represented using bit-vectors, see . Create the real type.cThis type is not a floating point number. Z3 does not have support for floating point numbers yet.+Create a bit-vector type of the given size.0This type can also be seen as a machine integer. mkBvSort c sz requires sz >= 0Create an array typeWe usually represent the array type as: [domain -> range]. Arrays are usually used to model the heap/memory in software verification.Create a tuple typeA tuple with n fields has a constructor and n projections. This function will also declare the constructor and projection functions.Create a contructorSCreate datatype, such as lists, trees, records, enumerations or unions of records.:The datatype may be recursive. Returns the datatype sort.uCreate list of constructors?Create mutually recursive datatypes, such as a tree and forest.Returns the datatype sorts+Create an set type with a given domain typeDeclare a constant or function.*Create a constant or function application.Declare and create a constant.This is a shorthand for: *do xd <- mkFunDecl c x [] s; mkApp c xd []%Declare a fresh constant or function.$Declare and create a fresh constant.#Declare and create a variable (aka constant). An alias for .(Declarate and create a variable of sort bool.See .(Declarate and create a variable of sort real.See .(Declarate and create a variable of sort int.See .(Declarate and create a variable of sort  bit-vector.See .Declare and create a fresh variable (aka constant). An alias for .Declarate and create a fresh variable of sort bool.See .Declarate and create a fresh variable of sort real.See .Declarate and create a fresh variable of sort int.See .Declarate and create a fresh variable of sort  bit-vector.See . Create an AST node representing true. Create an AST node representing false. Create an AST node representing l = r.NThe distinct construct is used for declaring the arguments pairwise distinct. That is, Qand [ args!!i /= args!!j | i <- [0..length(args)-1], j <- [i+1..length(args)-1] ] Create an AST node representing not(a).1Create an AST node representing an if-then-else: ite(t1, t2, t3). Create an AST node representing  t1 iff t2. Create an AST node representing  t1 implies t2. Create an AST node representing  t1 xor t2.ECreate an AST node representing args[0] and ... and args[num_args-1].CCreate an AST node representing args[0] or ... or args[num_args-1].2Create an AST node representing the given boolean.ACreate an AST node representing args[0] + ... + args[num_args-1].ACreate an AST node representing args[0] * ... * args[num_args-1].CCreate an AST node representing args[0] - ... - args[num_args - 1].%Create an AST node representing -arg..Create an AST node representing arg1 div arg2..Create an AST node representing arg1 mod arg2..Create an AST node representing arg1 rem arg2.Create less than.Create less than or equal to.Create greater than. Create greater than or equal to.Coerce an integer to a real.Coerce a real to an integer.%Check if a real number is an integer.Bitwise negation. >Take conjunction of bits in vector, return vector of length 1. >Take disjunction of bits in vector, return vector of length 1.  Bitwise and.  Bitwise or. Bitwise exclusive-or. Bitwise nand. Bitwise nor. Bitwise xnor.&Standard two's complement unary minus.#Standard two's complement addition.&Standard two's complement subtraction.)Standard two's complement multiplication.Unsigned division.!Two's complement signed division.Unsigned remainder.:Two's complement signed remainder (sign follows dividend).9Two's complement signed remainder (sign follows divisor).Unsigned less than."Two's complement signed less than.Unsigned less than or equal to..Two's complement signed less than or equal to."Unsigned greater than or equal to.1Two's complement signed greater than or equal to. Unsigned greater than.!%Two's complement signed greater than.""Concatenate the given bit-vectors.#_Extract the bits high down to low from a bitvector of size m to yield a new bitvector of size n, where n = high - low + 1.$RSign-extend of the given bit-vector to the (signed) equivalent bitvector of size m+i, where m% is the size of the given bit-vector.%WExtend the given bit-vector with zeros to the (unsigned) equivalent bitvector of size m+i, where m% is the size of the given bit-vector.&&Repeat the given bit-vector up length i.' Shift left.(Logical shift right.)Arithmetic shift right.*Rotate bits of t1 to the left i times.+Rotate bits of t1 to the right i times.,Rotate bits of t1 to the left t2 times.-Rotate bits of t1 to the right t2 times.. Create an n* bit bit-vector from the integer argument t1.//Create an integer from the bit-vector argument t1.If  is_signed is false, then the bit-vector t1O is treated as unsigned. So the result is non-negative and in the range [0..2^N -1], where N are the number of bits in t1. If  is_signed is true, t1# is treated as a signed bit-vector.0=Create a predicate that checks that the bit-wise addition of t1 and t2 does not overflow.1DCreate a predicate that checks that the bit-wise signed addition of t1 and t2 does not underflow.2GCreate a predicate that checks that the bit-wise signed subtraction of t1 and t2 does not overflow.3@Create a predicate that checks that the bit-wise subtraction of t1 and t2 does not underflow.4DCreate a predicate that checks that the bit-wise signed division of t1 and t2 does not overflow.54Check that bit-wise negation does not overflow when t1( is interpreted as a signed bit-vector.6CCreate a predicate that checks that the bit-wise multiplication of t1 and t2 does not overflow.7KCreate a predicate that checks that the bit-wise signed multiplication of t1 and t2 does not underflow.8XArray read. The argument a is the array and i is the index of the array that gets read.9 Array update.The result of this function is an array that is equal to the input array (with respect to select) on all indices except for i, where it maps to v.hThe semantics of this function is given by the theory of arrays described in the SMT-LIB standard. See  http://smtlib.org for more details.:Create the constant array.]The resulting term is an array, such that a select on an arbitrary index produces the value v.;Map a function f on the the argument arrays.The nR nodes args must be of array sorts [domain -> range_i]. The function declaration fZ must have type range_1 .. range_n -> range. The sort of the result is [domain -> range].<Access the array default value.pProduces the default range value, for arrays that can be represented as finite maps with a default range value.=Create the empty set.>Create the full set.?Add an element to a set.@Remove an element from a set.A!Take the union of a list of sets.B(Take the intersection of a list of sets.C)Take the set difference between two sets.DTake the complement of a set.ECheck for set membership.F5Check if the first set is a subset of the second set.G!Create a numeral of a given sort.HCreate a real from a fraction.I>Create a numeral of an int, bit-vector, or finite-domain sort.;This function can be use to create numerals that fit in a machine integer. It is slightly faster than G. since it is not necessary to parse a string.J>Create a numeral of an int, bit-vector, or finite-domain sort.;This function can be use to create numerals that fit in a machine unsigned integer. It is slightly faster than G. since it is not necessary to parse a string.K>Create a numeral of an int, bit-vector, or finite-domain sort.;This function can be use to create numerals that fit in a machine 64-bit integer. It is slightly faster than G. since it is not necessary to parse a string.L>Create a numeral of an int, bit-vector, or finite-domain sort.;This function can be use to create numerals that fit in a machine unsigned 64-bit integer. It is slightly faster than G. since it is not necessary to parse a string.M>Create a numeral of an int, bit-vector, or finite-domain sort.NCreate a numeral of sort real from a v.OCreate a numeral of sort real from a w.PCreate a numeral of sort real from a x.QCreate a numeral of sort int from an y.RCreate a numeral of sort int from an z.SCreate a numeral of sort  Bit-vector from an y.TCreate a numeral of sort  Bit-vector from an z.U.Create a pattern for quantifier instantiation.Z3 uses pattern matching to instantiate quantifiers. If a pattern is not provided for a quantifier, then Z3 will automatically compute a set of patterns for it. However, for optimal performance, the user should provide the patterns.Patterns comprise a list of terms. The list should be non-empty. If the list comprises of more than one term, it is a called a multi-pattern.VIn general, one can pass in a list of (multi-)patterns in the quantifier constructor.VCreate a bound variable.1Bound variables are indexed by de-Bruijn indices.See Vhttp://z3prover.github.io/api/html/group__capi.html#ga1d4da8849fca699b345322f8ee1fa31eWCreate a forall formula.8The bound variables are de-Bruijn indices created using V.3Z3 applies the convention that the last element in xsE refers to the variable with index 0, the second to last element of xs+ refers to the variable with index 1, etc.XCreate an exists formula. Similar to W.YcCreate a universal quantifier using a list of constants that will form the set of bound variables.ZeCreate a existential quantifier using a list of constants that will form the set of bound variables.[Return the symbol name.\'Return the sort kind of the given sort.]-Return the size of the given bit-vector sort.`&Get list of constructors for datatype.a%Get list of recognizers for datatype.b3Get list of accessors for the datatype constructor.c1Return the constant declaration name as a symbol.d9Returns the number of parameters of the given declarationeHReturns the sort of the i-th parameter of the given function declarationf+Returns the range of the given declaration.g3Convert an app into AST. This is just type casting.h=Return the declaration of a constant or function application.ihReturn the number of argument of an application. If t is an constant, then the number of arguments is 0.j2Return the i-th argument of the given application.k<Return a list of all the arguments of the given application.lReturn the sort of an AST node.mTReturn Z3_L_TRUE if a is true, Z3_L_FALSE if it is false, and Z3_L_UNDEF otherwise.n!Return the kind of the given AST.o2Return True if an ast is APP_AST, False otherwise.p:Convert an ast into an APP_AST. This is just type casting.q=Return numeral value, as a string of a numeric constant term.Read a { value from an Read an y value from an Read a v value from an  Read the y value from an  of sort  bit-vector.See /.(Evaluate an AST node in the given model.2The evaluation may fail for the following reasons:t contains a quantifier. the model m is partial.t is type incorrect.-Evaluate an array as a function, if possible.HReturn the function declaration f associated with a (_ as_array f) node.The (_ as-array f) AST node is a construct for assigning interpretations for arrays in Z3. It is the array such that forall indices i we have that (select (_ as-array f) i) is equal to (f i). This procedure returns Z3_TRUE if the a is an as-array AST node.Return the interpretation of the function f in the model m. Return NULL, if the model does not assign an interpretation for f. That should be interpreted as: the f does not matter.BReturn the number of entries in the given function interpretation.jReturn a _point_ of the given function intepretation. It represents the value of f in a particular point. Return the 'else', value of the given function interpretation.MReturn the arity (number of arguments) of the given function interpretation.Return the value of this point.9Return the number of arguments in a Z3_func_entry object.-Return an argument of a Z3_func_entry object.&Convert the given model into a string. Alias for . An alias for  with model completion enabled.Evaluate an AST node of sort bool in the given model.See  and .Evaluate an AST node of sort int in the given model.See  and .Evaluate an AST node of sort real in the given model.See  and .Evaluate an AST node of sort  bit-vector in the given model. The flag signedV decides whether the bit-vector value is interpreted as a signed or unsigned integer.See  and . Evaluate a  collection! of AST nodes in the given model.Run a evaluation function on a | data structure of  s (e.g. [AST],  Vector AST,  Maybe AST, etc).This a generic version of E which can be used in combination with other helpers. For instance, mapEval (evalInt c) can be used to obtain the y interpretation of a list of  of sort int.BEvaluate a function declaration to a list of argument/value pairs.<Set the pretty-printing mode for converting ASTs to strings.Convert an AST to a string.Convert a pattern to a string.Convert a sort to a string.Convert a FuncDecl to a string.:Convert the given benchmark into SMT-LIB formatted string.(The output format can be configured via .}Throws a z3 error~)Throw an exception if a Z3 error happened%Return Z3 version number information.>Generate a Z3 context suitable for generation of interpolants.@Create an AST node marking a formula position for interpolation.7Extracts interpolants from a proof of unsatisfiability.:Interpolants are computed in pre-order for occurrences of I within the second argument, which needs to be in form of a conjunction.+Checks satisfiability of input conjunction.Returns either a model witnessing satisfiability, or a (sequence) interpolants between individual subformulae of the conjunction wrapped in . Result: sat ->  Just (Left  model) unsat ->  Just (Right  interp) unknown -> Nothing(Read an interpolation problem from file.(Check the correctness of an interpolant.The Z3 context must have no constraints asserted when this call is made. That means that after interpolating, you must first fully pop the Z3 context before calling this.CReturn a string summarizing cumulative time used for interpolation.FThis string is purely for entertainment purposes and has no semantics.AWrite an interpolation problem to file suitable for reading with .The output file is a sequence of SMT-LIB2 format commands, suitable for reading with command-line Z3 or other interpolating solvers.;Return a string describing all solver available parameters.0Set the given solver using the given parameters.Number of backtracking points.ECheck whether the assertions in a given solver are consistent or not.`Check whether the assertions in the given solver and optional assumptions are consistent or not. Retrieve the model for the last .The error handler is invoked if a model is not available because the commands above were not invoked for the given solver, or if the result was .%Retrieve the unsat core for the last /; the unsat core is a subset of the assumptions$Return a brief justification for an Unknown result for the commands  and .'Convert the given solver into a string.Convert  from Z3.Base.C to Convert  to {.* should be OK but this is more convenient.Convert { to .Wraps a non-null pointer with , or else returns r.]^_`abcdefghijklmnopqrstuvwxyz{|}~sContextName of the sortName and sort of each fieldPResulting sort, and function declarations for the constructor and projections.ContextName of the constructorName of recognizer functionName, sort option, and sortRefsuContextList of ConstructorsLogical context.#Name of the function (or constant).&Function domain (empty for constants).Return sort of the function.Logical context.Prefix.Sort of the constant. bit-width bit-width      !"#$%&'()*+,-./012345678Array.Index of the array to read.9Array.Index i of the array.New value for i.:Domain sort of the array.Value v that the array maps to.; Function f.List of arrays.<Array.=Domain sort of the set.>Domain sort of the set.?Set.Element.@Set.Element.ABC First set. Second set.DSet.EElement.Set.F First set. Second set.GH numeratordenominator (/= 0)IJKLMNOPQRS bit-width integer valueT bit-width integer valueUTerms.Vde-Bruijn index.WInstantiation patterns (see U).Bound (quantified) variables xs.Sorts of the bound variables.Body of the quantifier.XYInstantiation patterns (see U).0Constants to be abstracted into bound variables.Quantifier body.ZInstantiation patterns (see U).0Constants to be abstracted into bound variables.Quantifier body.[\]^_`Datatype sort.Constructor declarations.aDatatype sort.Constructor recognizers.bDatatype sort.Constructor accessors.cdeA function declarationifghijklmnopqrstuvwxyz{|}~signed?Model m.Expression to evaluate t.Model completion?signed?namelogicstatus attributes assumptionsformulastring to parse sort namessortsdeclaration names declarations file name sort namessortsdeclaration names declarations}~boolean expression proof of falseinterpolation pattern (cf. )]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./5012367489:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]`abcdefghijkl^_mnopqrstuvwxyz{|}~}~z{|uvwxy]^_`abcdefghijklmnopqrst]^_`abcdefghijklmnopqrstuvwxyz{|}~  su      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~}~<(c) Iago Abal, 2013-2015 (c) David Castro, 2013BSD3TIago Abal <mail@iagoabal.eu>, David Castro <david.castro.dcp@gmail.com>None 9:;<=5Values for Z3 options.Any 5V type can be passed to a Z3 option (and values will be converted into an appropriate t). Since 0.4 the % instance has been replaced by a new w instance.Pair option-value.6Z3 configuration.7Default configuration.8Append configurations.9Set a configuration option.:Set configuration.If you are using the   K interface, you don't need to call this function directly, just pass your 6 to evalZ3* functions.Set an option.56789:;<=>?@56789:6:789556789:;<=>?@A(c) Iago Abal, 2013-2015 (c) David Castro, 2013-2015BSD3TIago Abal <mail@iagoabal.eu>, David Castro <david.castro.dcp@gmail.com>None 9:;<=IA#Type of an evaluation function for .!Evaluation may fail (i.e. return r) for a few reasons, see .BZ3 environment.GEval a Z3 script.H4Eval a Z3 script with default configuration options.ICreate a new Z3 environment.K*Eval a Z3 script with a given environment.QEnvironments may facilitate running many queries under the same logical context.mNote that an environment may change after each query. If you want to preserve the same environment then use a , as in evalZ3WithEnv env (local query).L"Create a Z3 (empty) parameter set.vStarting at Z3 4.0, parameter sets are used to configure many components such as: simplifiers, tactics, solvers, etc.MAdd a Boolean parameter k with value v to the parameter set p.NAdd a unsigned parameter k with value v to the parameter set p.OAdd a double parameter k with value v to the parameter set p.PAdd a symbol parameter k with value v to the parameter set p.Q&Convert a parameter set into a string.JThis function is mainly used for printing the contents of a parameter set.R$Create a Z3 symbol using an integer.S"Create a Z3 symbol using a string. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gafebb0d3c212927cf7834c3a20a84ecaeTACreate a free (uninterpreted) type using the given name (symbol). Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga736e88741af1c178cbebf94c49aa42deU Create the boolean type. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gacdc73510b69a010b71793d429015f342V Create the integer type. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga6cd426ab5748653b77d389fd3eac1015W Create the real type. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga40ef93b9738485caed6dc84631c3c1a0X+Create a bit-vector type of the given size.0This type can also be seen as a machine integer. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaeed000a1bbb84b6ca6fdaac6cf0c1688YCreate an array type Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gafe617994cce1b516f46128e448c84445ZCreate a tuple type Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga7156b9c0a76a28fae46c81f8e3cdf0f1[Create a contructor Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaa779e39f7050b9d51857887954b5f9b0\Create datatype, such as lists, trees, records, enumerations or unions of records. The datatype may be recursive. Return the datatype sort. Reference nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gab6809d53327d807da9158abdf75df387]?Create mutually recursive datatypes, such as a tree and forest.Returns the datatype sorts^Create a set type Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga6865879523e7e882d7e50a2d8445ac8b_ A Z3 function`*Create a constant or function application. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga33a202d86bf628bfab9b6f437536cebeaDeclare and create a constant. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga093c9703393f33ae282ec5e8729354efbDeclare and create a constant. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga093c9703393f33ae282ec5e8729354efc%Declare a fresh constant or function. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga1f60c7eb41c5603e55a188a14dc929ecd#Declare and create a variable (aka constant). An alias for a.e(Declarate and create a variable of sort bool.See d.f(Declarate and create a variable of sort real.See d.g(Declarate and create a variable of sort int.See d.h(Declarate and create a variable of sort  bit-vector.See d.iDeclare and create a fresh variable (aka constant). An alias for b.jDeclarate and create a fresh variable of sort bool.See i.kDeclarate and create a fresh variable of sort real.See i.lDeclarate and create a fresh variable of sort int.See i.mDeclarate and create a fresh variable of sort  bit-vector.See i.n Create an AST node representing true. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gae898e7380409bbc57b56cc5205ef1db7o Create an AST node representing false. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga5952ac17671117a02001fed6575c778dp Create an AST node representing l = r. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga95a19ce675b70e22bb0401f7137af37cqNThe distinct construct is used for declaring the arguments pairwise distinct. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaa076d3a668e0ec97d61744403153ecf7r Create an AST node representing not(a). Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga3329538091996eb7b3dc677760a61072s1Create an AST node representing an if-then-else: ite(t1, t2, t3). Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga94417eed5c36e1ad48bcfc8ad6e83547t Create an AST node representing  t1 iff t2. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga930a8e844d345fbebc498ac43a696042u Create an AST node representing  t1 implies t2. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gac829c0e25bbbd30343bf073f7b524517v Create an AST node representing  t1 xor t2. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gacc6d1b848032dec0c4617b594d4229ecwECreate an AST node representing args[0] and ... and args[num_args-1]. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gacde98ce4a8ed1dde50b9669db4838c61xCCreate an AST node representing args[0] or ... or args[num_args-1]. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga00866d16331d505620a6c515302021f9y2Create an AST node representing the given boolean.zACreate an AST node representing args[0] + ... + args[num_args-1]. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga4e4ac0a4e53eee0b4b0ef159ed7d0cd5{ACreate an AST node representing args[0] * ... * args[num_args-1]. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gab9affbf8401a18eea474b59ad4adc890|CCreate an AST node representing args[0] - ... - args[num_args - 1]. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga4f5fea9b683f9e674fd8f14d676cc9a9}%Create an AST node representing -arg. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gadcd2929ad732937e25f34277ce4988ea~.Create an AST node representing arg1 div arg2. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga1ac60ee8307af8d0b900375914194ff3.Create an AST node representing arg1 mod arg2. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga8e350ac77e6b8fe805f57efe196e7713.Create an AST node representing arg1 rem arg2. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga2fcdb17f9039bbdaddf8a30d037bd9ffCreate less than. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga58a3dc67c5de52cf599c346803ba1534Create less than or equal to. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaa9a33d11096841f4e8c407f1578bc0bfCreate greater than. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga46167b86067586bb742c0557d7babfd3 Create greater than or equal to. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gad9245cbadb80b192323d01a8360fb942Coerce an integer to a real. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga7130641e614c7ebafd28ae16a7681a21Coerce a real to an integer. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga759b6563ba1204aae55289009a3fdc6d%Check if a real number is an integer. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaac2ad0fb04e4900fdb4add438d137ad3Bitwise negation. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga36cf75c92c54c1ca633a230344f23080>Take conjunction of bits in vector, return vector of length 1. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaccc04f2b58903279b1b3be589b00a7d8>Take disjunction of bits in vector, return vector of length 1. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gafd18e127c0586abf47ad9cd96895f7d2 Bitwise and. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gab96e0ea55334cbcd5a0e79323b57615d Bitwise or. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga77a6ae233fb3371d187c6d559b2843f5Bitwise exclusive-or. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga0a3821ea00b1c762205f73e4bc29e7d8 Bitwise nand. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga96dc37d36efd658fff5b2b4df49b0e61 Bitwise nor. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gabf15059e9e8a2eafe4929fdfd259aadb Bitwise xnor. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga784f5ca36a4b03b93c67242cc94b21d6&Standard two's complement unary minus. Reference: < nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga0c78be00c03eda4ed6a983224ed5c7b7#Standard two's complement addition. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga819814e33573f3f9948b32fdc5311158&Standard two's complement subtraction. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga688c9aa1347888c7a51be4e46c19178e)Standard two's complement multiplication. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga6abd3dde2a1ceff1704cf7221a72258cUnsigned division. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga56ce0cd61666c6f8cf5777286f590544!Two's complement signed division. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gad240fedb2fda1c1005b8e9d3c7f3d5a0Unsigned remainder. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga5df4298ec835e43ddc9e3e0bae690c8d:Two's complement signed remainder (sign follows dividend). Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga46c18a3042fca174fe659d3185693db19Two's complement signed remainder (sign follows divisor). Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga95dac8e6eecb50f63cb82038560e0879Unsigned less than. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga5774b22e93abcaf9b594672af6c7c3c4"Two's complement signed less than. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga8ce08af4ed1fbdf08d4d6e63d171663aUnsigned less than or equal to. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gab738b89de0410e70c089d3ac9e696e87.Two's complement signed less than or equal to. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gab7c026feb93e7d2eab180e96f1e6255d"Unsigned greater than or equal to. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gade58fbfcf61b67bf8c4a441490d3c4df1Two's complement signed greater than or equal to. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaeec3414c0e8a90a6aa5a23af36bf6dc5Unsigned greater than. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga063ab9f16246c99e5c1c893613927ee3%Two's complement signed greater than. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga4e93a985aa2a7812c7c11a2c65d7c5f0"Concatenate the given bit-vectors. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gae774128fa5e9ff7458a36bd10e6ca0fa_Extract the bits high down to low from a bitvector of size m to yield a new bitvector of size n, where n = high - low + 1. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga32d2fe7563f3e6b114c1b97b205d4317RSign-extend of the given bit-vector to the (signed) equivalent bitvector of size m+i, where m% is the size of the given bit-vector. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gad29099270b36d0680bb54b560353c10eWExtend the given bit-vector with zeros to the (unsigned) equivalent bitvector of size m+i, where m% is the size of the given bit-vector. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gac9322fae11365a78640baf9078c428b3&Repeat the given bit-vector up length i. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga03e81721502ea225c264d1f556c9119d Shift left. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gac8d5e776c786c1172fa0d7dfede454e1Logical shift right. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gac59645a6edadad79a201f417e4e0c512Arithmetic shift right. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga674b580ad605ba1c2c9f9d3748be87c4Rotate bits of t1 to the left i times. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga4932b7d08fea079dd903cd857a52dcdaRotate bits of t1 to the right i times. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga3b94e1bf87ecd1a1858af8ebc1da4a1cRotate bits of t1 to the left t2 times. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaf46f1cb80e5a56044591a76e7c89e5e7Rotate bits of t1 to the right t2 times. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gabb227526c592b523879083f12aab281f Create an n* bit bit-vector from the integer argument t1. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga35f89eb05df43fbd9cce7200cc1f30b5/Create an integer from the bit-vector argument t1. If  is_signed is false, then the bit-vector t1O is treated as unsigned. So the result is non-negative and in the range [0..2^N -1], where N are the number of bits in t1. If  is_signed is true, t1# is treated as a signed bit-vector. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gac87b227dc3821d57258d7f53a28323d4=Create a predicate that checks that the bit-wise addition of t1 and t2 does not overflow. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga88f6b5ec876f05e0d7ba51e96c4b077fDCreate a predicate that checks that the bit-wise signed addition of t1 and t2 does not underflow. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga1e2b1927cf4e50000c1600d47a152947GCreate a predicate that checks that the bit-wise signed subtraction of t1 and t2 does not overflow. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga785f8127b87e0b42130e6d8f52167d7c@Create a predicate that checks that the bit-wise subtraction of t1 and t2 does not underflow. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga6480850f9fa01e14aea936c88ff184c4DCreate a predicate that checks that the bit-wise signed division of t1 and t2 does not overflow. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaa17e7b2c33dfe2abbd74d390927ae83e4Check that bit-wise negation does not overflow when t1( is interpreted as a signed bit-vector. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gae9c5d72605ddcd0e76657341eaccb6c7CCreate a predicate that checks that the bit-wise multiplication of t1 and t2 does not overflow. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga86f4415719d295a2f6845c70b3aaa1dfKCreate a predicate that checks that the bit-wise signed multiplication of t1 and t2 does not underflow. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga501ccc01d737aad3ede5699741717fdaXArray read. The argument a is the array and i is the index of the array that gets read. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga38f423f3683379e7f597a7fe59eccb67Array update.  Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gae305a4f54b4a64f7e5973ae6ccb13593Create the constant array. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga84ea6f0c32b99c70033feaa8f00e8f2d!map f on the the argument arrays. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga9150242d9430a8c3d55d2ca3b9a4362dAccess the array default value. Produces the default range value, for arrays that can be represented as finite maps with a default range value. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga78e89cca82f0ab4d5f4e662e5e5fba7dCreate the empty set. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga358b6b80509a567148f1c0ca9252118cCreate the full set. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga5e92662c657374f7332aa32ce4503dd2Add an element to a set. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga856c3d0e28ce720f53912c2bbdd76175Remove an element from a set. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga80e883f39dd3b88f9d0745c8a5b91d1d!Take the union of a list of sets. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga4050162a13d539b8913200963bb4743c(Take the intersection of a list of sets. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga8a8abff0ebe6aeeaa6c919eaa013049d)Take the set difference between two sets. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gabb49c62f70b8198362e1a29ba6d8bde1Take the complement of a set. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga5c57143c9229cdf730c5103ff696590fCheck for set membership. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gac6e516f3dce0bdd41095c6d6daf560635Check if the first set is a subset of the second set. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga139c5803af0e86464adc7cedc53e7f3a!Create a numeral of a given sort. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gac8aca397e32ca33618d8024bff32948cCreate a numeral of sort real.>Create a numeral of an int, bit-vector, or finite-domain sort.;This function can be use to create numerals that fit in a machine integer. It is slightly faster than . since it is not necessary to parse a string.>Create a numeral of an int, bit-vector, or finite-domain sort.;This function can be use to create numerals that fit in a machine unsigned integer. It is slightly faster than . since it is not necessary to parse a string.>Create a numeral of an int, bit-vector, or finite-domain sort.;This function can be use to create numerals that fit in a machine 64-bit integer. It is slightly faster than . since it is not necessary to parse a string.>Create a numeral of an int, bit-vector, or finite-domain sort.;This function can be use to create numerals that fit in a machine unsigned 64-bit integer. It is slightly faster than . since it is not necessary to parse a string.>Create a numeral of an int, bit-vector, or finite-domain sort.Create a numeral of sort real from a v.Create a numeral of sort real from a w.Create a numeral of sort real from a x.Create a numeral of sort int from an y.Create a numeral of sort int from an z.Create a numeral of sort  Bit-vector from an y.Create a numeral of sort  Bit-vector from an z.Return the symbol name. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaf1683d9464f377e5089ce6ebf2a9bd31Return the sort kind. Reference: Vhttp://z3prover.github.io/api/html/group__capi.html#gacd85d48842c7bfaa696596d16875681a-Return the size of the given bit-vector sort. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga8fc3550edace7bc046e16d1f96ddb419&Get list of constructors for datatype.%Get list of recognizers for datatype.#Get list of accessors for datatype.1Return the constant declaration name as a symbol. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga741b1bf11cb92aa2ec9ef2fef73ff1299Returns the number of parameters of the given declarationHReturns the sort of the i-th parameter of the given function declaration+Returns the range of the given declaration.3Convert an app into AST. This is just type casting.=Return the declaration of a constant or function application.hReturn the number of argument of an application. If t is an constant, then the number of arguments is 0.2Return the i-th argument of the given application.<Return a list of all the arguments of the given application.Return the sort of an AST node.Returns  Just True,  Just False, or Nothing for  undefined. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga133aaa1ec31af9b570ed7627a3c8c5a4!Return the kind of the given AST. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga4c43608feea4cae363ef9c520c239a5c2Return True if an ast is APP_AST, False otherwise.Cast AST into an App.=Return numeral value, as a string of a numeric constant term.Simplify the expression. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gada433553406475e5dd6a494ea957844c3Simplify the expression using the given parameters. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga34329d4c83ca8c98e18b2884b679008cRead a { value from an Return the integer valueReturn rational value Read the y value from an  of sort  bit-vector.See .(Evaluate an AST node in the given model.2The evaluation may fail for the following reasons:t contains a quantifier. the model m is partial.t is type incorrect. fGet array as a list of argument/value pairs, if it is represented as a function (ie, using as-array). Return the interpretation of the function f in the model m. Return NULL, if the model does not assign an interpretation for f. That should be interpreted as: the f does not matter. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gafb9cc5eca9564d8a849c154c5a4a8633The (_ as-array f) AST node is a construct for assigning interpretations for arrays in Z3. It is the array such that forall indices i we have that (select (_ as-array f) i) is equal to (f i). This procedure returns Z3_TRUE if the a is an as-array AST node. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga4674da67d226bfb16861829b9f129cfaHReturn the function declaration f associated with a (_ as_array f) node. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga7d9262dc6e79f2aeb23fd4a383589ddaBReturn the number of entries in the given function interpretation. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga2bab9ae1444940e7593729beec279844jReturn a "point" of the given function intepretation. It represents the value of f in a particular point. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaf157e1e1cd8c0cfe6a21be6370f659da Return the 'else', value of the given function interpretation. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga46de7559826ba71b8488d727cba1fb64MReturn the arity (number of arguments) of the given function interpretation. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaca22cbdb6f7787aaae5d814f2ab383d8Return the value of this point. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga9fd65e2ab039aa8e40608c2ecf7084da9Return the number of arguments in a Z3_func_entry object. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga51aed8c5bc4b1f53f0c371312de3ce1a-Return an argument of a Z3_func_entry object. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga6fe03fe3c824fceb52766a4d8c2cbeab&Convert the given model into a string. Alias for .  An alias for  with model completion enabled.!Evaluate an AST node of sort bool in the given model.See  and ."Evaluate an AST node of sort int in the given model.See  and .#Evaluate an AST node of sort real in the given model.See  and .$Evaluate an AST node of sort  bit-vector in the given model. The flag signedV decides whether the bit-vector value is interpreted as a signed or unsigned integer.See  and .%6Evaluate a collection of AST nodes in the given model.&Run a evaluation function on a | data structure of  s (e.g. [AST],  Vector AST,  Maybe AST, etc).This a generic version of %E which can be used in combination with other helpers. For instance, mapEval evalInt can be used to obtain the y interpretation of a list of  of sort int.'/Get function as a list of argument/value pairs.83Set the mode for converting expressions to strings.9Convert an AST to a string.:Convert a pattern to a string.;Convert a sort to a string.<Convert a FuncDecl to a string.=:Convert the given benchmark into SMT-LIB formatted string.(The output format can be configured via 8.>#Parse SMT expressions from a stringThe sort and declaration arguments allow parsing in a context in which variables and functions have already been declared. They are almost never used.?!Parse SMT expressions from a fileThe sort and declaration arguments allow parsing in a context in which variables and functions have already been declared. They are almost never used.A%Return Z3 version number information.Q;Return a string describing all solver available parameters.R*Set the solver using the given parameters.SCreate a backtracking point.T Backtrack n backtracking points.VNumber of backtracking points.W-Assert a constraing into the logical context. Reference: nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#ga1a05ff73a564ae7256a2257048a4680aXdAssert a constraint a into the solver, and track it (in the unsat) core using the Boolean constant p.5This API is an alternative to Z3_solver_check_assumptions for extracting unsat cores. Both APIs can be used in the same solver. The unsat core will contain a combination of the Boolean variables provided using Z3_solver_assert_and_track and the Boolean literals provided using Z3_solver_check_assumptions.YECheck whether the assertions in a given solver are consistent or not.Z`Check whether the assertions in the given solver and optional assumptions are consistent or not.[ Retrieve the model for the last Y.The error handler is invoked if a model is not available because the commands above were not invoked for the given solver, or if the result was .\%Retrieve the unsat core for the last Z/; the unsat core is a subset of the assumptions]$Return a brief justification for an Unknown result for the commands Y and Z.^'Convert the given solver into a string._Create a backtracking point.For push; m; pop 1 see a.` Backtrack n backtracking points. Contrary to T this funtion checks whether n/ is within the size of the solver scope stack.a4Run a query and restore the initial logical context.This is a shorthand for _, run the query, and `.bBacktrack all the way.c"Get number of backtracking points.e=Check whether the given logical context is consistent or not.f`Check whether the assertions in the given solver and optional assumptions are consistent or not.h Get model. Reference : nhttp://research.microsoft.com/en-us/um/redmond/projects/z3/group__capi.html#gaff310fef80ac8a82d0a51417e073ec0aiCheck satisfiability and, if sat', compute a value from the given model.E.g. 1 withModel $ \m -> fromJust <$> evalInt m x j%Retrieve the unsat core for the last f0; the unsat core is a subset of the assumptions.BABCDEFGHIJKLMNOPQRSTUVWXYZName of the sortName and sort of each fieldPResulting sort, and function declarations for the constructor and projections.[Name of the sonstructorName of recognizer functionName, sort option, and sortRefs\]^_`abcdefgh bit-widthijklm bit-widthnopqrstuvwxyz{|}~ bit-width integer value bit-width integer valueDatatype sort.Constructor declarations.Datatype sort.Constructor recognizers.Datatype sort.Constructor recognizers.A function declarationisigned?Model completion?      !"#$signed?%&'()*+,-./0123456789:;<=namelogicstatus attributes assumptions1formula>string to parse sort namessortsdeclaration names declarations?string to parse sort namessortsdeclaration names declarations@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl]^_`abcdefghijklmnopqrstuvwxyz}~56789:ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijDEFC]^_`abcdefghijklmnopqrstHGBIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnoprstuvwxqyz{|}~     A !"#$%&'()*+,-./0123456789:;<=>?@}~AzBCDEFGHIuvwxyJKLMNOPQRSTUVWXYZ[\]^defghij_`abc9ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl    !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDE FGHIJKLM      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^\_`adefghijklmnopbcqrstuvwxyz{|}~NOPQRSTUVWXYZ[\]^_`abc`ade`fg`hi`fjklm`fnopq`rstuvwx`ayz{|}~cop:E z3-4.3-6eTLZFEnmk0LLLW7cjhOTK Z3.Base.CZ3.BaseZ3.OptsZ3.MonadControl ExceptionForeigntoBoolZ3Monad Z3_ast_kind Z3_sort_kind Z3_error_codeZ3_ast_print_mode Z3_stringZ3_error_handlerZ3_boolZ3_lbool Z3_ast_vector Z3_params Z3_solver Z3_fixedpoint Z3_func_entryZ3_func_interpZ3_apply_result Z3_tacticZ3_goalZ3_modelZ3_constructor_listZ3_constructor Z3_patternZ3_app Z3_func_declZ3_sortZ3_ast Z3_symbol Z3_context Z3_configz3_fixedpoint_query_relationsz3_fixedpoint_get_assertionsz3_fixedpoint_get_answerz3_fixedpoint_register_relationz3_fixedpoint_add_rulez3_fixedpoint_set_paramsz3_fixedpoint_dec_refz3_fixedpoint_inc_refz3_fixedpoint_popz3_fixedpoint_pushz3_mk_fixedpointz3_get_versionz3_get_error_msg_exz3_get_error_msg z3_set_errorz3_set_error_handlerz3_get_error_codez3_get_parser_errorz3_parse_smtlib2_filez3_parse_smtlib2_stringz3_benchmark_to_smtlib_stringz3_func_decl_to_stringz3_sort_to_stringz3_pattern_to_stringz3_ast_to_stringz3_set_ast_print_modez3_solver_to_stringz3_solver_get_reason_unknownz3_solver_get_unsat_corez3_solver_get_modelz3_solver_check_assumptionsz3_solver_checkz3_solver_assert_and_trackz3_solver_assertz3_solver_resetz3_solver_get_num_scopes z3_solver_popz3_solver_pushz3_solver_dec_refz3_solver_inc_refz3_solver_set_paramsz3_solver_get_helpz3_mk_solver_for_logicz3_mk_simple_solver z3_mk_solverz3_goal_formula z3_goal_sizez3_goal_assertz3_goal_dec_refz3_goal_inc_ref z3_mk_goalz3_apply_result_get_subgoal z3_apply_result_get_num_subgoalsz3_apply_result_dec_refz3_apply_result_inc_refz3_tactic_applyz3_tactic_dec_refz3_tactic_inc_refz3_tactic_try_forz3_tactic_skipz3_tactic_or_elsez3_tactic_and_then z3_mk_tacticz3_write_interpolation_problemz3_interpolation_profilez3_check_interpolantz3_read_interpolation_problemz3_compute_interpolantz3_get_interpolantz3_mk_interpolation_contextz3_mk_interpolantz3_params_to_stringz3_params_set_symbolz3_params_set_doublez3_params_set_uintz3_params_set_boolz3_params_dec_refz3_params_inc_ref z3_mk_paramsz3_model_to_stringz3_get_index_valuez3_func_entry_get_argz3_func_entry_get_num_argsz3_func_entry_get_valuez3_func_entry_dec_refz3_func_entry_inc_refz3_func_interp_get_arityz3_func_interp_get_elsez3_func_interp_get_entryz3_func_interp_get_num_entriesz3_func_interp_dec_refz3_func_interp_inc_refz3_add_const_interpz3_add_func_interpz3_get_as_array_func_declz3_is_as_arrayz3_model_get_func_declz3_model_get_const_declz3_model_get_num_funcsz3_model_get_num_constsz3_model_has_interpz3_model_get_func_interpz3_model_get_const_interp z3_model_evalz3_model_dec_refz3_model_inc_refz3_ast_vector_dec_refz3_ast_vector_inc_refz3_ast_vector_getz3_ast_vector_sizez3_substitute_varsz3_get_quantifier_bodyz3_get_quantifier_bound_sortz3_get_quantifier_bound_namez3_get_quantifier_num_bound z3_get_quantifier_no_pattern_ast!z3_get_quantifier_num_no_patternsz3_get_quantifier_pattern_astz3_get_quantifier_num_patternsz3_get_quantifier_weightz3_is_quantifier_forallz3_simplify_ex z3_simplifyz3_pattern_to_ast z3_to_app z3_get_range z3_get_domain z3_get_arityz3_get_numeral_stringz3_get_bool_valuez3_get_array_sort_rangez3_get_array_sort_domain z3_get_sort z3_app_to_astz3_get_bv_sort_sizez3_get_sort_kindz3_get_symbol_stringz3_get_decl_name)z3_get_datatype_sort_constructor_accessorz3_get_datatype_sort_recognizer z3_get_datatype_sort_constructor%z3_get_datatype_sort_num_constructorsz3_get_app_declz3_get_app_argz3_get_app_num_args z3_is_appz3_get_ast_kindz3_func_decl_to_astz3_mk_exists_constz3_mk_forall_const z3_mk_exists z3_mk_forall z3_mk_bound z3_mk_patternz3_mk_unsigned_int64 z3_mk_int64z3_mk_unsigned_int z3_mk_int z3_mk_real z3_mk_numeralz3_mk_set_subsetz3_mk_set_memberz3_mk_set_complementz3_mk_set_differencez3_mk_set_intersectz3_mk_set_union z3_mk_set_del z3_mk_set_addz3_mk_full_setz3_mk_empty_setz3_mk_array_default z3_mk_mapz3_mk_const_array z3_mk_store z3_mk_selectz3_mk_bvmul_no_underflowz3_mk_bvmul_no_overflowz3_mk_bvneg_no_overflowz3_mk_bvsdiv_no_overflowz3_mk_bvsub_no_underflowz3_mk_bvsub_no_overflowz3_mk_bvadd_no_underflowz3_mk_bvadd_no_overflow z3_mk_bv2int z3_mk_int2bvz3_mk_ext_rotate_rightz3_mk_ext_rotate_leftz3_mk_rotate_rightz3_mk_rotate_left z3_mk_bvashr z3_mk_bvlshr z3_mk_bvshl z3_mk_repeatz3_mk_zero_extz3_mk_sign_ext z3_mk_extract z3_mk_concat z3_mk_bvsgt z3_mk_bvugt z3_mk_bvsge z3_mk_bvuge z3_mk_bvsle z3_mk_bvule z3_mk_bvslt z3_mk_bvult z3_mk_bvsmod z3_mk_bvsrem z3_mk_bvurem z3_mk_bvsdiv z3_mk_bvudiv z3_mk_bvmul z3_mk_bvsub z3_mk_bvadd z3_mk_bvneg z3_mk_bvxnor z3_mk_bvnor z3_mk_bvnand z3_mk_bvxor z3_mk_bvor z3_mk_bvand z3_mk_bvredorz3_mk_bvredand z3_mk_bvnot z3_mk_is_intz3_mk_real2intz3_mk_int2realz3_mk_gez3_mk_gtz3_mk_lez3_mk_lt z3_mk_rem z3_mk_mod z3_mk_divz3_mk_unary_minus z3_mk_sub z3_mk_mul z3_mk_addz3_mk_or z3_mk_and z3_mk_xor z3_mk_implies z3_mk_iff z3_mk_ite z3_mk_notz3_mk_distinctz3_mk_eq z3_mk_false z3_mk_truez3_mk_fresh_func_declz3_mk_fresh_const z3_mk_const z3_mk_appz3_mk_func_declz3_mk_set_sortz3_mk_datatypesz3_del_constructor_listz3_mk_constructor_listz3_mk_datatypez3_del_constructorz3_mk_constructorz3_mk_tuple_sortz3_mk_array_sort z3_mk_bv_sortz3_mk_real_sortz3_mk_int_sortz3_mk_bool_sortz3_mk_uninterpreted_sortz3_sort_to_astz3_mk_string_symbolz3_mk_int_symbol z3_dec_ref z3_inc_refz3_del_contextz3_mk_context_rcz3_set_param_value z3_del_config z3_mk_config z3_l_true z3_l_false z3_l_undefz3_truez3_falsez3_print_smtlib_fullz3_print_low_levelz3_print_smtlib2_compliantz3_ok z3_sort_errorz3_iobz3_invalid_argz3_parser_error z3_no_parserz3_invalid_patternz3_memout_failz3_file_access_errorz3_internal_fatalz3_invalid_usagez3_dec_ref_error z3_exceptionz3_uninterpreted_sort z3_bool_sort z3_int_sort z3_real_sort z3_bv_sort z3_array_sortz3_datatype_sortz3_relation_sortz3_finite_domain_sortz3_floating_point_sortz3_rounding_mode_sortz3_unknown_sortz3_numeral_ast z3_app_ast z3_var_astz3_quantifier_ast z3_sort_astz3_func_decl_astz3_unknown_ast $fEqZ3_lbool $fEqZ3_boolLogicAUFLIAAUFLIRAAUFNIRALRAQF_ABVQF_AUFBV QF_AUFLIAQF_AXQF_BVQF_IDLQF_LIAQF_LRAQF_NIAQF_NRAQF_RDLQF_UFQF_UFBVQF_UFIDLQF_UFLIAQF_UFLRAQF_UFNRAUFLRAUFNIAInterpolationProblemgetConstraints getParentsgetTheoryTerms Fixedpoint unFixedpointVersionz3Majorz3Minorz3Build z3Revision Z3ErrorCode SortErrorIOB InvalidArg ParserErrorNoParserInvalidPattern MemoutFailFileAccessError InternalFatal InvalidUsage DecRefError Z3ExceptionZ3ErrorerrCodeerrMsg ASTPrintModeZ3_PRINT_SMTLIB_FULLZ3_PRINT_LOW_LEVELZ3_PRINT_SMTLIB2_COMPLIANT FuncModel interpMap interpElseEvalAstASTKindZ3_NUMERAL_AST Z3_APP_AST Z3_VAR_ASTZ3_QUANTIFIER_AST Z3_SORT_ASTZ3_FUNC_DECL_ASTZ3_UNKNOWN_ASTSortKindZ3_UNINTERPRETED_SORT Z3_BOOL_SORT Z3_INT_SORT Z3_REAL_SORT Z3_BV_SORT Z3_ARRAY_SORTZ3_DATATYPE_SORTZ3_RELATION_SORTZ3_FINITE_DOMAIN_SORTZ3_FLOATING_POINT_SORTZ3_ROUNDING_MODE_SORTZ3_UNKNOWN_SORTResultSatUnsatUndefSolverParams ApplyResultGoalTactic FuncEntry FuncInterpModel ConstructorPatternAppFuncDeclSortASTSymbolContextConfigmkConfig delConfig setParamValue withConfig mkContextmkParams paramsSetBool paramsSetUIntparamsSetDoubleparamsSetSymbolparamsToString mkIntSymbolmkStringSymbolmkUninterpretedSort mkBoolSort mkIntSort mkRealSortmkBvSort mkArraySort mkTupleSort mkConstructor mkDatatype mkDatatypes mkSetSort mkFuncDeclmkAppmkConstmkFreshFuncDecl mkFreshConstmkVar mkBoolVar mkRealVarmkIntVarmkBvVar mkFreshVarmkFreshBoolVarmkFreshRealVar mkFreshIntVar mkFreshBvVarmkTruemkFalsemkEq mkDistinctmkNotmkItemkIff mkImpliesmkXormkAndmkOrmkBoolmkAddmkMulmkSub mkUnaryMinusmkDivmkModmkRemmkLtmkLemkGtmkGe mkInt2Real mkReal2IntmkIsIntmkBvnot mkBvredand mkBvredormkBvandmkBvormkBvxormkBvnandmkBvnormkBvxnormkBvnegmkBvaddmkBvsubmkBvmulmkBvudivmkBvsdivmkBvuremmkBvsremmkBvsmodmkBvultmkBvsltmkBvulemkBvslemkBvugemkBvsgemkBvugtmkBvsgtmkConcat mkExtract mkSignExt mkZeroExtmkRepeatmkBvshlmkBvlshrmkBvashr mkRotateLeft mkRotateRightmkExtRotateLeftmkExtRotateRightmkInt2bvmkBv2intmkBvaddNoOverflowmkBvaddNoUnderflowmkBvsubNoOverflowmkBvsubNoUnderflowmkBvsdivNoOverflowmkBvnegNoOverflowmkBvmulNoOverflowmkBvmulNoUnderflowmkSelectmkStore mkConstArraymkMapmkArrayDefault mkEmptySet mkFullSetmkSetAddmkSetDel mkSetUnionmkSetIntersectmkSetDifferencemkSetComplement mkSetMember mkSetSubset mkNumeralmkRealmkInt mkUnsignedIntmkInt64mkUnsignedInt64 mkIntegral mkRationalmkFixed mkRealNum mkIntegermkIntNum mkBitvectormkBvNum mkPatternmkBoundmkForallmkExists mkForallConst mkExistsConstgetSymbolString getSortKind getBvSortSizegetArraySortDomaingetArraySortRangegetDatatypeSortConstructorsgetDatatypeSortRecognizers#getDatatypeSortConstructorAccessors getDeclNamegetArity getDomaingetRangeappToAst getAppDecl getAppNumArgs getAppArg getAppArgsgetSort getBoolValue getAstKindisApptoAppgetNumeralString getIndexValueisQuantifierForallisQuantifierExistsgetQuantifierWeightgetQuantifierNumPatternsgetQuantifierPatternASTgetQuantifierPatternsgetQuantifierNumNoPatternsgetQuantifierNoPatternASTgetQuantifierNoPatternsgetQuantifierNumBoundgetQuantifierBoundNamegetQuantifierBoundSortgetQuantifierBoundVarsgetQuantifierBodysimplify simplifyExgetBoolgetIntgetRealgetBvsubstituteVars modelEvalgetConstInterp hasInterp numConstsnumFuncs getConstDecl getFuncDecl getConstsgetFuncs evalArraygetAsArrayFuncDecl isAsArray addFuncInterpaddConstInterp getFuncInterpfuncInterpGetNumEntriesfuncInterpGetEntryfuncInterpGetElsefuncInterpGetArityfuncEntryGetValuefuncEntryGetNumArgsfuncEntryGetArg modelToString showModelevalevalBoolevalIntevalRealevalBvevalTmapEvalevalFuncsetASTPrintMode astToStringpatternToString sortToStringfuncDeclToStringbenchmarkToSMTLibStringmkTactic andThenTactic orElseTactic skipTactic tryForTacticmkQuantifierEliminationTacticmkAndInverterGraphTactic applyTacticgetApplyResultNumSubgoalsgetApplyResultSubgoalgetApplyResultSubgoalsmkGoal goalAssert getGoalSizegetGoalFormulagetGoalFormulasparseSMTLib2StringparseSMTLib2FilegetParserError getVersion mkFixedpointfixedpointPush fixedpointPopfixedpointAddRulefixedpointSetParamsfixedpointRegisterRelationfixedpointQueryRelationsfixedpointGetAnswerfixedpointGetAssertionsmkInterpolationContext mkInterpolantgetInterpolantcomputeInterpolantreadInterpolationProblemcheckInterpolantinterpolationProfilewriteInterpolationProblemmkSolvermkSimpleSolvermkSolverForLogic solverGetHelpsolverSetParams solverPush solverPop solverResetsolverGetNumScopessolverAssertCnstrsolverAssertAndTrack solverChecksolverCheckAssumptionssolverGetModelsolverGetUnsatCoresolverGetReasonUnknownsolverToStringsolverCheckAndGetModel withContext$fMarshalGoalPtr$fMarshalApplyResultPtr$fMarshalTacticPtr$fMarshalSolverPtr$fMarshalConstructorListPtr$fMarshalConstructorPtr$fMarshalPatternPtr$fMarshalModelPtr$fMarshalFuncInterpPtr$fMarshalFuncEntryPtr$fMarshalFuncDeclPtr$fMarshalSortPtr$fMarshal[]Ptr$fMarshalASTPtr$fMarshalSymbolPtr$fMarshalParamsPtr$fMarshalAppPtr$fMarshal[]Ptr0$fMarshalDoubleCDouble$fMarshalhCULLong$fMarshalhCLLong$fMarshalhCUInt$fMarshalhCInt$fMarshalResultZ3_lbool$fMarshalBoolZ3_bool $fMarshal()()$fMarshalMaybePtr $fShowLogic$fMarshalFixedpointPtr $fShowVersion$fExceptionZ3Error $fShowZ3Error $fEqConfig $fEqContext $fEqSymbol $fOrdSymbol $fShowSymbol$fStorableSymbol$fEqAST$fOrdAST $fShowAST$fEqSort $fOrdSort $fShowSort $fEqFuncDecl $fOrdFuncDecl$fShowFuncDecl$fEqApp$fOrdApp $fShowApp $fEqPattern $fOrdPattern $fShowPattern$fEqConstructor$fOrdConstructor$fShowConstructor$fEqConstructorList$fOrdConstructorList$fShowConstructorList $fEqModel$fEqFuncInterp $fEqFuncEntry $fEqTactic$fEqGoal$fEqApplyResult $fEqParams $fEqSolver $fEqResult $fOrdResult $fReadResult $fShowResult $fEqSortKind$fShowSortKind $fEqASTKind $fShowASTKind$fShowZ3ErrorCode $fEqVersion $fOrdVersion$fEqFixedpointOptValueOptsstdOpts+?optsetOpts $fOptValue[]$fOptValueFixed$fOptValueInteger $fOptValueInt$fOptValueBool $fMonoidOptsZ3EnvMonadZ3 getSolver getContext evalZ3WithevalZ3newEnv newItpEnv evalZ3WithEnvpushpoplocalreset getNumScopesassertcheckcheckAssumptionsgetModel withModel getUnsatCore$fMonadFixedpointZ3 $fMonadZ3Z3 $fFunctorZ3$fApplicativeZ3 $fMonadZ3 $fMonadIOZ3 $fMonadFixZ3baseGHC.BaseNothingConstructorListStringmkConstructorListGHC.RealRational Data.FixedFixedReal integer-gmpGHC.Integer.TypeIntegerIntegralghc-prim GHC.TypesBoolData.Traversable Traversablez3Error checkErrortoResultunBool ptrToMaybeJust Z3DecRefFun Z3IncRefFun Z3SetRefCountMarshalc2hh2cMkZ3QuantifierConstMkZ3QuantifierunSolverunParams unApplyResultunGoalunTactic unFuncEntry unFuncInterpunModelunConstructorList unConstructor unPatternunApp unFuncDeclunSortunASTunSymbol unContextrefCountunConfig mkContextWith contextIncRef contextDecRef marshalMkQmarshalMkQConstgetMapFromInterpgetEntry getEntryArgs toZ3ErrorwithContextError marshalArraymarshalArrayLenmarshalMaybeArrayliftAstNhs2cscs2hspeekToHs peekToMaybeHs peekArrayToHspeekPtrArrayToHstoHsCheckError mkC2hRefCount dummy_inc_ref on_ast_ptrmarshalliftFun0liftFun1liftFun2liftFun3DoubleOptsetOptoption singletonboolValMonadFixedpoint getFixedpoint envSolver envContext envFixedpoint_unZ3 liftScalarliftFun4liftFun5liftFun6 liftSolver0 liftSolver1 liftSolver2liftFixedpoint0liftFixedpoint1liftFixedpoint2 newEnvWith